
Twenty dollars doesn’t feel like much of a grocery budget anymore, but exactly how far it stretches depends heavily on what you buy—and where you buy it. Aldi and Walmart are two of the first places budget shoppers often consider, with Aldi emphasizing private-label products and a smaller assortment while Walmart competes through Great Value staples, Rollbacks and enormous selection. Instead of simply comparing a few cherry-picked prices, we gave ourselves the same challenge at both stores: build a useful grocery basket without spending more than $20. Prices vary by location and can differ online versus in stores, but the results show just how much food a carefully planned $20 can still buy.
The Rules: $20, Useful Groceries and No Junk Just to Fill the Basket
We wanted these baskets to resemble groceries someone might actually take home rather than loading up on whichever random products happened to have the lowest price. That meant prioritizing fruit, protein, dairy and pantry staples that could contribute to multiple breakfasts, lunches or dinners. We also used current advertised or listed prices available from each retailer rather than assuming a price from an old grocery receipt still applies. Produce and meat prices can involve estimated weights, so those items can cause the final register total to move slightly. Most importantly, this isn’t meant to prove that either retailer will be cheaper in every city—it’s a snapshot of how we could stretch the same $20 budget using current prices.
Here’s What We Put in the $20 Aldi Basket
Aldi’s current fall price cuts gave us an obvious place to begin: a two-pound bag of Honeycrisp apples for $1.99 and Kirkwood chicken breast family packs advertised at $1.99 per pound. From there, we added a 32-ounce container of plain Greek yogurt for about $2.79, an 8-ounce package of baby bella mushrooms for $1.45, a one-pound package of pasta for $1.25 and a dozen eggs for about $2.85. A five-pound bag of parboiled long-grain rice was listed around $4.39, giving the basket a pantry staple that could stretch well beyond a single meal. Using roughly two pounds of the advertised chicken would add about $3.98, bringing our estimated Aldi total to $18.70. That leaves about $1.30 of our $20 budget unspent while giving us seven grocery items and several possible meals.
Our Aldi basket:
| Grocery | Price |
|---|---|
| Honeycrisp apples, 2 lb. | $1.99 |
| Chicken breasts, approx. 2 lb. | $3.98 |
| Plain Greek yogurt, 32 oz. | $2.79 |
| Baby bella mushrooms, 8 oz. | $1.45 |
| Penne pasta, 16 oz. | $1.25 |
| Eggs, 12 count | $2.85 |
| Long-grain rice, 5 lb. | $4.39 |
| Estimated total | $18.70 |
| Money left | $1.30 |
Aldi’s Basket Gives Us Several Actual Meals
What matters more than the item count is what you can do with the groceries once you get home. Eggs, yogurt and apples provide several breakfast combinations, while the chicken can become the foundation for multiple lunches or dinners. Chicken with rice is an obvious inexpensive meal, while chicken, mushrooms and pasta give you another dinner without purchasing an entirely different set of ingredients. Five pounds of dry rice also isn’t disappearing after one dinner, meaning some of that $18.70 purchase rolls into future meals. You’d need seasonings, cooking oil and possibly vegetables or sauce from your existing pantry to turn everything into complete recipes, but this is a surprisingly useful basket for less than $20.
Here’s What We Put in the $20 Walmart Basket
Walmart gave us a different advantage: a huge number of low-priced Great Value staples and several current Rollbacks. A five-pound bag of Great Value long-grain rice was listed at $3.52, while one-pound boxes of Great Value pasta were $1.24 and a dozen large white eggs were about $1.67. We added a half-gallon of whole milk for $1.62, two cans of Great Value black beans at 92 cents each, two cans of corn at a current Rollback price of about 50 cents each, and a pound of strawberries at a current listed price of $2.29. A three-pound bag of frozen Great Value boneless skinless chicken breasts was listed at $9.84, but adding it would push this particular basket past $20, forcing us to make a decision Aldi’s lower advertised chicken price didn’t require. Instead, we used the remaining money for additional low-cost staples and produce, showing how Walmart’s strength can be assembling lots of inexpensive individual components.
Our Walmart basket:
| Grocery | Price |
|---|---|
| Long-grain rice, 5 lb. | $3.52 |
| Penne pasta, 16 oz. | $1.24 |
| Eggs, 12 count | $1.67 |
| Whole milk, half gallon | $1.62 |
| Black beans, 2 cans | $1.84 |
| Corn, 2 cans | $1.00 |
| Strawberries, 1 lb. | $2.29 |
| Bananas, approx. 2 lb. | $0.66 |
| Green beans, 2 cans | $1.00 |
| Additional pasta, 16 oz. | $1.24 |
| Additional black beans, 2 cans | $1.84 |
| Estimated total | $17.92 |
| Money left | $2.08 |
Walmart Bought More Individual Items, but There’s a Catch

Counting packages alone makes Walmart look impressive because our basket contains multiple cans of vegetables and beans, two boxes of pasta and inexpensive produce. The problem becomes obvious when you compare the protein: our Walmart basket doesn’t include chicken, while Aldi’s does. Walmart’s three-pound Great Value frozen chicken breast was listed around $9.84, or $3.28 per pound, which would consume almost half the $20 budget by itself. Walmart shoppers could certainly rebuild the basket around that chicken—dropping several cans and other staples—but they would then have fewer individual groceries in the cart. So Walmart won on the number of inexpensive pantry items we could collect, while Aldi gave us more flexibility to include meat within the same $20 ceiling.
The Chicken Price Changed the Entire Competition
This experiment also shows why comparing one cheap item doesn’t tell you which grocery store will produce the cheapest basket. Walmart beat our listed Aldi price on eggs, for example, at roughly $1.67 versus $2.85, a difference of $1.18 per dozen. Its five-pound rice was also about 87 cents cheaper, and Walmart gave us particularly inexpensive canned vegetables during current Rollbacks. Aldi’s biggest advantage was protein because its fall promotion has chicken breast family packs at $1.99 per pound, the retailer says its lowest everyday price since 2022. Put several categories together and the winners change—which is why shopping an entire list matters more than bragging that one store has cheaper eggs this week.
So Which $20 Basket Would We Rather Take Home?
For these particular baskets, we’d give Aldi the win. Walmart allowed us to collect more individual packages of inexpensive pantry foods, and it beat Aldi on several individual staples, so someone stocking an empty pantry could reasonably prefer that basket. But Aldi let us leave with fruit, yogurt, eggs, rice, pasta, mushrooms and approximately two pounds of chicken for an estimated $18.70. That’s a more versatile mix for someone trying to turn $20 into several different meals rather than simply accumulate the highest number of packages. Walmart came out stronger for canned goods and certain staples, while Aldi’s current chicken and produce pricing gave it the edge in our specific $20 challenge.
A Recent Real-World Price Check Points the Same Direction
Our result isn’t evidence that Aldi will always beat Walmart, but another recent basket comparison reached a similar conclusion. A September 2026 price check of 11 common staples in North Carolina found the basket cost $21.71 at Aldi versus $24.20 at Walmart, a $2.49 difference. Aldi was cheaper in that comparison for milk, bread, chicken breasts, ground beef and potatoes, while Walmart won on eggs. That’s a useful reminder that no retailer owns the lowest price in every aisle, even when one wins the overall receipt. A shopper willing to compare a few high-impact items—especially meat, dairy and produce—may save more than someone who drives across town to save 10 cents on a can of vegetables.
Our $20 Winner Is Aldi — But We’d Still Check Walmart
If we had exactly $20 and needed to turn it into the most useful collection of groceries today, we’d take the Aldi basket. Its current $1.99-per-pound chicken promotion is doing a lot of the work, and that price is scheduled to remain in effect through at least Nov. 3, so this result could change once promotions or local prices change. Walmart still deserves a look for eggs, canned goods, pantry staples and Rollbacks, particularly if meat isn’t on your shopping list. The smartest strategy isn’t pledging loyalty to one retailer; it’s knowing which two or three expensive items can swing your grocery total and checking those before you shop. On this $20 challenge, though, Aldi gave us the basket we’d rather carry home.
If you only had $20 for groceries today, which basket would you choose—the Aldi basket with chicken or the Walmart basket with more pantry staples?
What To Read Next
10 Aldi Finds Under $10 That Could Actually Save You Money This Week
Walmart, Aldi or Dollar General: Where Should a $50 Grocery Budget Actually Go?
Aldi’s Biggest Money-Saving Secret Isn’t in the Weekly Ad
The post What Does $20 Buy at Aldi vs. Walmart? We Filled Both Baskets appeared first on Grocery Coupon Guide.
