Grocery budgeting
Grocery shopping on a tight budget
When money is genuinely short, buying order matters more than bargain hunting. A full week for two at $47.47, in the order to buy it.
By Joao Dunlap · · 4 min read

The short version
- A full week for two on the tight list: $47.47, or $3.39 per person per day.
- Buy in order of calories and protein per dollar, not in order of what you fancy.
- Rice, oats, potatoes, eggs and dried pulses first. Everything else is optional.
- One cooking oil is not optional — nothing on the list cooks without it.
Most budget grocery advice assumes some slack: swap this for that, buy the store brand, watch for offers. When the money is genuinely tight, none of that is the question. The question is what to put in the basket first, and what to leave out if it runs short.
This is that list, in buying order. It feeds two people for a week and it is deliberately plain — variety is the first thing a tight budget loses and the first thing to add back when there is room.
The buying order
If you have to stop partway down this list, stop at the bottom of what you can afford. It is ordered so that the things that keep you fed come first.
| # | What | Why it is this high |
|---|---|---|
| 1 | Rice and oats | The most calories per dollar in the shop, and they keep for a year |
| 2 | Dried lentils and beans | The cheapest protein there is, and shelf-stable |
| 3 | Eggs | Fast protein that needs no planning and does not spoil quickly |
| 4 | Potatoes and onions | Filling, cheap, and they last weeks without a fridge |
| 5 | Cooking oil | Small cost, but nothing above this cooks without it |
| 6 | Tinned tomatoes | Turns the list above into meals instead of ingredients |
| 7 | Carrots and cabbage | The cheapest vegetables, and the longest-keeping |
| 8 | Peanut butter | Cheap protein and fat, no cooking required |
| 9 | Frozen peas | Vegetables with no deadline |
| 10 | Bananas | The cheapest fruit, and the one children will actually eat |
The week, priced
| Item | Quantity | Price |
|---|---|---|
| Yellow onions | 3 lb bag | $3.49 |
| Garlic | 1 head | $0.79 |
| Carrots | 2 lb bag | $2.29 |
| Russet potatoes | 5 lb bag | $4.49 |
| Green cabbage | 1 head | $2.49 |
| Bananas | 6 | $1.86 |
| Item | Quantity | Price |
|---|---|---|
| Eggs | 18 count | $4.98 |
| Dried lentils | 1 lb | $1.89 |
| Dried pinto beans | 1 lb | $1.79 |
| Peanut butter | 16 oz | $2.98 |
| Item | Quantity | Price |
|---|---|---|
| Frozen peas | 16 oz | $1.39 |
| Item | Quantity | Price |
|---|---|---|
| Long-grain white rice | 5 lb bag | $5.49 |
| Rolled oats | 42 oz | $4.29 |
| Pasta | 2 lb | $2.58 |
| Canned diced tomatoes | 2 cans | $2.38 |
| Vegetable oil | 48 oz | $4.29 |
| Tight week · 2 people | $3.39 per person per day | $47.47 |
That is genuinely repetitive food, and it is honest to say so. It is a reset-month list rather than a way to live indefinitely — but it is three real meals a day, with protein in all of them.
What to add back first when there is room
- 1Spices and stock cubes. A few dollars, and they turn the same ingredients into several different dinners. This is the highest-value thing you can add.
- 2A second vegetable. Whatever is cheapest that week. Variety of vegetable does more for how a week feels than variety of protein.
- 3Tinned fish. Protein that needs no cooking, and it makes lunch stop being repetitive.
- 4A chicken thigh pack. The cheapest meat per gram of protein, and one pack stretches across two dinners.
- 5Fruit beyond bananas. This is where a tight list starts feeling like a normal one again.
Meals from the tight list
Everything here is made almost entirely from the list above. From the NeatEat library, which will hold to whatever weekly number you set.
20 minHearty Potato and Lentil Stew
Makes dinner and the next day's lunch in one pot.
20 minCheap and Cheerful Egg Fried Rice
Leftover rice plus eggs. Twelve minutes, pennies a serving.
20 minPasta with Lentil Tomato Sauce
Lentils instead of mince. Nobody notices.
20 minCabbage and Lentil Stir-Fry with Rice
Cabbage keeps all week, so this is a Friday dish.
20 minCurried Split Pea Grain Bowl
Split peas are the cheapest protein in the shop.
20 minEgg and Vegetable Skillet Hash
Uses up whatever vegetables are left. 31g protein.
Frequently asked questions
What should I buy first when money is tight?
Rice and oats, then dried lentils and beans, then eggs, then potatoes and onions. Those five cover calories and protein for the least money and none of them spoil quickly. Buy cooking oil next - it is a small cost, and nothing above it cooks without it.
What is the cheapest way to feed two people for a week?
About $47.47, or $3.39 per person per day, using the list on this page: grains, dried pulses, eggs, potatoes and the cheapest long-keeping vegetables. It is deliberately plain and repetitive, which is the honest trade at that number.
What are the cheapest foods that fill you up?
Rice, oats, potatoes, pasta and dried pulses, in that order for calories per dollar. All of them are shelf-stable, so none of the money is at risk of spoiling. Adding eggs and a little oil turns them from ingredients into meals.
How do I eat healthy on a very low income?
Dried lentils and beans, eggs, oats, frozen vegetables, cabbage and carrots are all cheap and genuinely nutritious - a low-income diet built on those is better than most convenience-food diets at any budget. What a tight budget really costs you is variety rather than nutrition, which is why spices are the first thing worth adding back.