30 School Lunches Under $2 a Day

I priced out a week of school lunches once, mostly to prove to myself that I was doing fine, and I was not. What surprised me was that almost none of the cost was the food. It was the format. A packet of instant oatmeal runs about 40 cents and the identical oatmeal out of a canister is under 10, and that same multiplier turns up on applesauce, on cheese, on nearly anything sold in a single serving size with a cartoon printed on it.

So everything here comes in under $2 a serving and most of it lands well under $1. Nothing depends on a coupon or a sale, because a lunch plan that only works during a sale is not a plan. I cook most of these in batches on Sunday, which is the step most people skip and then they wonder why cooking from scratch never seems to save them anything. The math only works at volume.

1) Black Bean Tacos

Two cans of black beans and a stack of corn tortillas will feed four people for about a dollar each. I cook the beans down with cumin and lime until they are thick enough to sit on a tortilla without running, because soupy beans in a lunchbox are a disaster nobody recovers from. Pack the filling and the tortillas separately and let the kid assemble at the table. Shredded cabbage on top holds its crunch far better than lettuce does.

    2) Sloppy Joes

    The filling reheats beautifully and freezes even better, so I make a double batch every time I make it at all. A pound of ground beef stretched with an onion and a can of tomato sauce gives six generous servings, a little over $1 each. Send it in a thermos with the bun bagged separately. A bun that has been sitting in sauce since 7 a.m. is not a sandwich anymore, it is a sponge.

    3) BBQ Chicken Sandwiches

    Chicken thighs are the cheapest protein in the case most weeks and they are also the ones that shred properly. I cook them low with a bottle of sauce until they fall apart against a fork, roughly three hours, and the whole pot works out to around 90 cents a serving. Thighs over breasts here is non-negotiable. Breast meat goes dry and stringy the second it cools, and cold is exactly how this will be eaten.

    4) Chicken Quesadillas

    The last of whatever chicken is in the fridge is what goes in here, which is most of the reason it stays cheap. A tortilla, a handful of cheese, and four ounces of chicken lands around $1.25. Let it cool completely on a rack before it gets cut and packed, or the trapped steam turns the inside limp. Ten minutes on the counter and it travels like a champion.

    5) Stuffed Peppers

    Peppers are the expensive part, so these are worth making when they are in season and about 80 cents apiece rather than $2. Rice and beans do most of the filling and the meat behaves more like a seasoning than a main event, which is where the savings actually live. They hold their shape well enough to go into a container whole. Bake at 375°F (190°C) until the tops brown and the peppers slump slightly, about 35 minutes.

    6) Egg Bake Squares

    Eggs are still the best deal in the store per gram of protein, and this is the format that makes them portable. Whatever vegetables are going soft in the drawer go in, which means the recipe changes every week and I have stopped writing it down. Bake it in a sheet pan, cool it completely, cut it into squares. A square plus a piece of fruit is around 70 cents and it is a real lunch.

      7) Spaghetti Bolognese

      Half a pound of beef and two cans of tomatoes will sauce enough pasta for eight servings, which puts this at about 85 cents a plate. Let it go for at least an hour on low. This is the step most people skip and then they ask why their sauce tastes flat and sharp instead of round. Pack it cold if it is going into a container, because pasta that sat warm in a bag all morning has a texture I would not wish on anyone.

      8) Pasta Primavera

      Whatever vegetable is cheapest that week decides what this dish is, which is the entire point of it. I toss it with olive oil and parmesan rather than a cream sauce, partly for cost and mostly because cream sauce breaks when it cools. It is genuinely good at room temperature, which not every pasta dish can claim. Undercook the pasta by a minute so it is not mush by lunchtime.

      9) Cacio e Pepe

      Four ingredients, three of which you already own, at roughly 60 cents a serving. The sauce comes from the starchy pasta water and the cheese with no butter or cream involved, which is the only reason it is this cheap. Grate the cheese yourself. Pre-shredded cheese is coated in starch and will not melt smooth, and there is no fixing it once it seizes.

      10) Spaghetti Squash

      I sold this to a skeptical seven year old as noodles and I have never corrected the record. One squash runs about $3 and feeds four, which is not the cheapest thing here but it is close, and it is a vegetable a kid will eat without negotiation. Roast it cut side down at 400°F (200°C) for 40 minutes, then pull the strands out with a fork. It holds sauce like pasta and stays firm in a container overnight.

      11) Pinto Beans and Chile Lime Rice

      Soak the beans overnight. I know the no-soak method exists, I have tested it, and the texture is not the same. A pound of dried pintos is about $2 and makes roughly twelve servings, so the beans themselves come out to pennies. Rice with lime zest and a little chile powder costs almost nothing and turns the plate from thrifty into deliberate.

      12) Chickpea Curry

      Day two is when this is actually good, which makes it a useful Sunday cook rather than a weeknight one. Two cans of chickpeas, a can of coconut milk, and a spoonful of curry paste feeds four for under $1 each, and serving it over rice stretches it further still. If the heat is a problem, cut the paste in half and add more coconut milk. A lunch that comes home uneaten costs more than an expensive one.

      13) White Bean Chicken Chili

      This is the pot I make when there is one chicken breast left and five people to feed. The beans carry it, the chicken is closer to a garnish, and nobody has ever noticed. It thermoses well and runs about 80 cents a bowl. A squeeze of lime right before it goes into the container keeps it from tasting like the inside of a can.

      14) Bean Soup with Toast

      Dried beans, an onion, a ham hock if you have one, and time. That is the entire cost structure, and it lands well under 50 cents a bowl. The toast is not optional, because a soup this plain needs something with a crunch to it or a kid decides it is boring by the third spoonful. I send the bread separately and let them do the dunking.

      15) Split Pea Soup

      When the grocery week has already gone sideways, this is the pot that saves it. A bag of split peas is about $1.50 and makes eight bowls, which is the best per-serving math on the whole list. It thickens dramatically overnight, so thin it with a little water when you pack it or it arrives as a solid block. Peas do not need soaking, unlike almost every other dried legume.

        16) Butternut Squash Soup

        Squash goes cheap in the fall and this freezes in single portions, so I make a lot of it in October and eat it into January. Roast the squash instead of boiling it. This is the step most people skip and then their soup tastes watery and vaguely sweet instead of deep. Blended smooth with a little cream it comes to about 75 cents a serving.

        17) Chicken Sausage and Green Beans

        One pan, two ingredients, about $1.30 a serving. I slice the sausage into coins so every piece gets a browned face, which is more flavor than a whole link will ever give you. The green beans go into the same pan and pick up the fat. It is as good cold as it is hot, and that is not something I say often.

        18) Potatoes au Gratin

        The cheese here is a topping and not a sauce, which is where most versions of this get expensive without getting any better. Potatoes and milk do the work, and it feeds six for about 50 cents each. Slice the potatoes thin and even, an eighth of an inch, or the top layer burns while the bottom stays raw. Bake at 375°F (190°C) for about an hour.

        19) Garlic Mashed Potatoes

        Roast the garlic instead of adding it raw. Raw garlic in mashed potatoes is aggressive at 8 in the morning and unbearable by noon, and I learned that the hard way. Five pounds of potatoes is usually under $4, which is eight servings of side dish with change left over. I keep a container in the fridge all week and reheat them with a splash of milk, and butter matters far more than cream here.

        20) Grilled Potato Wedges

        Wedges hold up in a container in a way that fries simply do not, which is the whole reason they are on this list instead. Toss them in oil and salt, get real color on the cut sides, and let them cool uncovered so they do not steam themselves soft. Under 30 cents a serving. Send ketchup in its own small container or the wedges arrive pink and damp.

        21) Roasted Carrots and Green Beans

        Carrots roasted hot get sweet enough that kids who reject them raw will eat them this way, which I did not expect and have stopped questioning. Green beans go on the same pan and take the same time, so it is one sheet and one wash. Roast at 425°F (220°C) for 25 minutes and do not crowd them. Crowding is how you end up with steamed vegetables and a confused child.

        22) Green Bean Salad

        Blanched green beans, a sharp vinaigrette, and about fifteen minutes of your life. It costs roughly 40 cents a serving and it improves overnight, which almost nothing in a lunchbox does. Shock the beans in ice water the second they come out of the pot. That part is non-negotiable, because beans that keep cooking in their own heat go army green and limp.

        23) Savory Oatmeal

        Oats run under 10 cents a serving and there is no rule anywhere that they have to be sweet. I cook them in broth instead of water, top them with a soft egg and whatever green is around, and it becomes lunch instead of breakfast. It sets up firm as it cools, so pack it a little looser than seems right. This is what I make on a week where the grocery budget is already spent.

          24) Cornbread Squares

          Squares of this survive a backpack better than almost any other bread, which is why it is here and sandwich bread is not. Cornmeal is one of the last genuinely cheap ingredients left and a whole pan runs about $1.50. I add corn kernels to the batter, which is not traditional and makes it moist enough to eat without butter. Bake at 400°F (200°C) for 20 to 25 minutes.

          25) Rosemary Focaccia

          Flour, water, yeast, salt, oil. That is an entire pan of bread for under $1, and it makes the rest of the lunch look intentional. It needs time rather than attention, so I start it the night before and the active work is about ten minutes. Cut into squares it will hold a filling or stand on its own.

          26) Popovers

          They have to go into a hot oven in a hot pan or they will not climb, and a flat popover is just a sad pancake. Eggs, milk, flour, nothing else, at roughly 15 cents apiece. They deflate as they cool and that is normal, so do not read it as failure. Sent alongside soup they earn their place completely.

          27) Yogurt Parfait with Granola

          A big tub of plain yogurt costs a third of what the single serving cups do, and granola is almost free if you make it. About 60 cents a parfait against $2 or more for the store version, which is the clearest example on this list of paying for packaging. Layer the granola on top and never in the middle. It goes soft within an hour of touching the yogurt.

          28) Chips with Salsa and Guacamole

          This is a lunch, and I have stopped arguing about it. Corn tortillas cut and baked into chips cost almost nothing, salsa is a can of tomatoes and an onion, and one avocado stretches across three servings. The whole plate lands around 90 cents. Press plastic wrap directly onto the surface of the guacamole, because nobody eats brown guacamole and nobody should have to.

          29) Rice Krispies Treats

          These have never once come home uneaten, and I have tested that claim repeatedly. Three ingredients, about 20 cents a square. Take the pot off the heat before the marshmallows are fully melted and let the residual heat finish the job, because overcooked marshmallow sets up like a brick. Press the mixture into the pan lightly, since packing it down hard is how you get a treat nobody can bite through.

          30) Cinnamon Sugar Donut Holes

          Baked and not fried, which is mostly about not wanting a pot of oil going on a Tuesday. A batch makes about two dozen for under $2, so they land around 8 cents each. Roll them in the cinnamon sugar while they are still warm or nothing sticks to them. I make these on a week that has been rough and a lunchbox needs to say something kind.

          Nathaniel Lee

          Nathaniel Lee is the self-taught chef and recipe developer behind HomeViable. No culinary school, no nutrition degree. He learned by watching, tasting, and refusing to stop asking why. Every recipe here teaches something. He wants you to understand your food, not just cook it.