Grocery & Food SavingsIntermediate5 min read

Aldi vs. Walmart vs. Kroger: where staples are actually cheapest

The three most common 'cheap grocery' options compared honestly — prices, trade-offs, and the hybrid strategy that beats shopping at any single one.

Ask where groceries are cheapest and you'll hear three answers: Aldi, Walmart, or 'my Kroger with the card and the sales.' All three are defensible, because they win in different ways. Aldi wins on everyday staple prices, Walmart wins on breadth at consistently low prices, and Kroger-style traditional stores win on rock-bottom sale prices for those who play the game. Here's how it actually shakes out.

How each store gets cheap

  • Aldi: a ruthlessly small store — roughly 1,400 mostly private-label items versus 30,000+ elsewhere. Tiny stores, quarter-deposit carts, bring-your-own bags, minimal staff. Basket studies routinely put a staple basket 15–25% below traditional supermarkets and mid-single digits below Walmart.
  • Walmart: scale. Everyday-low-price on a full 30,000-item assortment, national brands included, plus the Great Value private label. Rarely the absolute cheapest on any one staple, almost never expensive on anything.
  • Kroger (and peers like Safeway, Publix, H-E-B): high shelf prices offset by aggressive sales cycles, loyalty-card pricing, digital coupons, and fuel points. The everyday price loses; the sale price on loss leaders frequently beats both Aldi and Walmart.
A sample staple basket
A representative basket — milk, eggs, bread, chicken breast, ground beef, rice, pasta, canned tomatoes, cheese, bananas, cereal, butter — might run roughly $42 at Aldi, $46 at Walmart, and $55 at Kroger at everyday prices. But the Kroger shopper buying only its weekly loss leaders (chicken at $1.99/lb, cereal at $1.99) beats both stores on those specific items. Prices vary by region — run your own basket once; it takes one trip.

The honest trade-offs

Aldi's price advantage comes with a narrow selection — one or two options per category, mostly store brand, and a produce section that varies in quality by location and day. If your list includes specific national brands or specialty ingredients, you'll need a second stop. Walmart's trade-off is the shopping experience and quality variance on meat and produce at some locations. Kroger's trade-off is that its convenience and pleasantness are funded by everyday prices 15–25% higher — shop it without engaging the sales-and-coupons game and you're paying the premium without the rebate.

The hybrid that wins
The cheapest realistic strategy for most households: Aldi (or Walmart) for the staple base, plus a quick raid on the traditional store's front-page loss leaders when they beat everything. Two stops, 20 extra minutes, typically 20–30% off a single-store Kroger bill — without clipping anything.

Which single store, if you only pick one

  1. Pick Aldi if your cart is mostly staples and produce, you're brand-flexible, and there's one nearby. Lowest effort-to-savings ratio in the industry.
  2. Pick Walmart if you want one-stop shopping with national brands and a full assortment at reliably low prices — especially with grocery pickup, which kills impulse buys.
  3. Pick Kroger-style only if you'll genuinely work the system: shop the ad, load the digital coupons, buy loss leaders deep, and stack fuel points. Played well it's competitive; played lazily it's the most expensive option on this list.
Don't drive away the savings
A second store only pays if it's on your route. Driving 15 extra miles each way to save $9 costs most of the savings in gas and an hour of your life. The hybrid strategy works when the stores are near each other or near your commute.

The basket, item by item

ItemAldiWalmartKroger (no sale)
Milk, 1 gallon$2.95$3.09$3.49
Eggs, dozen large$2.19$2.42$2.99
Bread, sandwich loaf$1.29$1.42$2.49
Chicken breast, per lb$2.89$2.97$3.99
Ground beef 80/20, per lb$3.99$4.18$4.99
Rice, 2 lb$1.79$1.97$2.79
Pasta, 1 lb$0.95$1.08$1.49
Canned tomatoes$0.89$0.98$1.39
Cheese block, 8 oz$1.99$2.22$2.99
Bananas, per lb$0.49$0.54$0.69
Cereal$1.85$2.24$4.29
Butter, 1 lb$3.45$3.67$4.79
A 12-item staple basket at everyday prices (representative mid-2020s figures — run your own basket locally)

Totals for this representative basket: roughly $25 at Aldi, $27 at Walmart, and $36 at Kroger without sales. But add Kroger's game — say chicken at a $1.99 loss-leader week and cereal at $1.99 with a digital coupon — and its basket drops by $6 on those two lines alone. That's the entire dynamic in one table: the discounter wins the lazy comparison every time, and the traditional store wins specific line items on specific weeks for shoppers paying attention.

A worked month on the hybrid strategy

A family spending $950 a month all-in at a traditional chain switches to the hybrid: the staple base (about 70% of spending) moves to Aldi at roughly 20% savings, worth about $130 a month. Twice a month they detour eight minutes to the Kroger for front-page loss leaders only — chicken, cheese, cereal at their lows — spending $60 and saving maybe $25 versus buying those items at Aldi's everyday price. New monthly total: around $795, a savings of roughly $155 a month or $1,850 a year, for two extra short stops. The mistake to avoid is inverting it: doing the full shop at Kroger 'because I'm already here for the chicken' hands the savings right back.

Running your own basket test

National comparisons are directionally right and locally wrong — a strong regional chain, an H-E-B or a WinCo, can scramble the rankings entirely. The fix takes one week: write down your household's 12 most-purchased items with sizes, then price them at your two or three candidate stores using their apps or one drive-by each. Total the baskets, note the gap, and multiply by 52. A $9-per-week gap is $468 a year — enough to justify changing a habit; a $3 gap probably isn't worth a longer drive. Repeat the test once a year, because the answer moves: chains reprice aggressively against each other, and the store that won your basket in 2024 may quietly lose it by 2026.

One caution on the comparison itself: match quality tiers honestly. Comparing Aldi's store-brand cheese to Kroger's premium label inflates Aldi's win; comparing Walmart's cheapest ground beef to a leaner grind elsewhere inflates Walmart's. Basket tests only tell the truth when each line item is the version your household would genuinely buy at that store.

The bottom line

Aldi is the cheapest default basket, Walmart is the cheapest full-assortment one-stop, and Kroger is cheapest only for deliberate sale shoppers. The real winner is a hybrid: staple base at the discounter, loss leaders at the traditional store, and no loyalty to any logo — only to the unit price.

Check your understanding

1 of 3
At everyday prices, which store usually wins on the staple basket?

Not quite — try again.

The Worth letter

Get smarter about money every week

One email, no spam — practical guides and Worth updates. Unsubscribe anytime.

Put this into practice

Worth tracks your accounts, budgets, and goals — so the concepts in this article aren't just theory.

Start free trial