H&M vs Old Navy: which button-up to buy, and when
Both land in the budget tier: the H&M Slim Fit Cotton Shirt at $25, the Old Navy Everyday Shirt at $30, $5 apart. Here is how they stack up, head to head.
Comparing the brands overall, not just these two? H&M vs Old Navy, the whole-brand comparison
| 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. |
Both are budget button-ups built for one or two seasons, not the long haul. H&M's $25 slim cut runs trim and short with thin poplin or oxford cloth; Old Navy's $30 everyday shirt sits slightly boxy in a regular casual fit. The $5 gap mostly buys a roomier, more relaxed silhouette rather than better cloth.
- The case for H&M
- $5 cheaper, slim European cut, trim trend-led look, fine for one season
- The case for Old Navy
- Roomier regular fit, easy layering, true to size, casual stocking-up
VerdictThe pick
Buy the H&M shirt at $25 if you want a slim, trim look and accept a one-season life from thin cloth. Pay the extra $5 for Old Navy if you'd rather have a relaxed casual fit that layers easily and you're stocking up cheap. Neither lasts past about a year, with collars and cuffs the first to go, so don't overthink it. Pick on fit and the cheaper one wins unless you specifically want room.
This link may pay us when you click or buy, at no extra cost to you.

