H&M vs Old Navy: which button-up wins?
Both land in the budget tier — the H&M Slim Fit Cotton Shirt at $25, the Old Navy Everyday Shirt at $30, just $5 apart. Here's how they stack up, head to head.
| H&M | Old Navy | |
|---|---|---|
| Price | $25 | $30 |
| Material | Thin cotton or cotton-blend (poplin, oxford or linen blend). | Lightweight cotton or cotton-blend (oxford / poplin / flannel by season). |
| Fit | Slim European cut, true to size; runs trim and short. | Regular casual fit, true to size; runs slightly boxy. |
| Quality | Budget — thin cloth, basic buttons and seams, fades and loosens after several washes. | Budget — thin fabric, basic buttons, collar and cuffs wear within a year. |
| Best for | Occasional wear, trend pieces, and cheap one-season shirts. | Casual everyday wear, layering, and cheap stocking-up. |
| Care | Cold wash and hang or tumble low; expect some shrink and colour loss early on. | Cold wash and tumble low; expect some shrink and fade over the first washes. |
Which should you buy?
They sit in the same tier and are within $5 of each other, so it comes down to what you want out of a button-up. Lean H&M for occasional wear, trend pieces, and cheap one-season shirts; pick Old Navy for casual everyday wear, layering, and cheap stocking-up.
We may earn a commission if you buy through this link, at no extra cost to you.

