Count dinners separately from diners
Make one row per evening and add the names of the people definitely eating. Monday might be two adults, Tuesday one adult, and Wednesday two adults. If a guest joins on Wednesday, change the serving count without adding another night. One person eating at home is still a dinner to cover, even if that person plans to assemble a sandwich rather than cook.
Give an uncertain night a decision time
Leave the least certain evening flexible. If Friday plans depend on a train arrival, list one meal the person at home can put together alone. Buy its ingredients only if they also fit another dinner.
Write down when the unknown will be settled. “Friday train confirmed Thursday lunchtime” tells the shopper whether to buy for two before leaving on Thursday afternoon. If the answer will come after the shop, choose an option that scales up without a special trip.
Translate the calendar into purchases
Read each occupied row aloud with the person shopping. Two people on Monday and three on Wednesday require different amounts even if both dinners use pasta. Remove meals already covered by an invitation, then mark who handles each remaining evening. Count breakfasts and lunches separately if they also use the same ingredients.