This might not come as a surprise to you, but your current buying habits are dictated by a company's need to sell and move products, i.e. marketing. Grocery is no exception. We've been trained to never buy the last perfectly edible watermelon in the bin. We've also been taught to mistakenly misunderstand a food's best before date as the food's expiry date.
Best Before Date does not equal a food's expiry date!
Best Before Date simply means when the product is at its peak quality in terms of ripeness, flavour, colour, etc.. You've probably seen this stamped on food items like produce and assumed it was an expiry date. This date only makes sense from a marketing prospective as grocers want to sell aesthetically pleasing foods. They understandably want to show the best foods on fully stocked shelves. This is what leads to a surplus in grocery items, as grocers throw out products around 2 days before the best before date (sometimes even up to a week before, depending on the grocer).
This marketing tactic has lead to 35 millions tons of perfectly edible food being thrown out annually, and that's just in the US. What makes matters worse is when rotten food gets buried under other garbage in the landfill, it emits greenhouse gases like methane, adding to the larger global issues of climate change.
The truth is, if unopened and stored properly as per manufacture instructions, food can last a whole lot longer than its best before date and still remain safe. If food is opened and stored incorrectly, then there is a high chance that it can spoil, but this is fairly self-explanatory. (we hope!)
The Globe and Mail published the list below a few years back on how long refrigerated items retain their freshness. The meats, fish and poultry also relate to food safety in this case (if not frozen).
Milk: 7 days after “best before” date, opened or unopened
Yogurt: 7 to 10 days, opened or unopened
Cheese, hard: 3 to 4 weeks opened, 6 months unopened
Butter: 4 weeks after best before date, opened or unopened
Eggs, in shell: 4 weeks
Eggs, hard-cooked: 1 week
Fresh meat: 2 to 4 days
Fresh ground meat: 1 to 2 days
Deli meats: 3 to 4 days
Fresh chicken or turkey, whole or pieces: 2 to 3 days
Fresh ground poultry: 1 to 2 days
Cooked chicken: 3 to 4 days
Fresh fish: 2 to 3 days
Fresh shellfish: 12 to 24 hours
Leftover soups, stews, casseroles: 3 to 4 days
Jams and jellies: 3 to 4 months, opened
Mayonnaise: 2 to 3 months, opened
Mustard: 1 year, opened
Ketchup: 6 months, opened
Salad dressing or vinaigrette, bottled: 6 to 9 months, opened
Salsa, bottled: 4 weeks, opened
For a complete guide - view this PDF from the Food Banks of Canada. As you can see, food can last a whole lot longer than its best before date.
Expiry date, which pertains to food safety are only legally required by the Canadian Food Inspection Agency on a limited amount of products like Baby Formula and Meal Replacement Drinks. Otherwise, it's generally not included on grocery food items.
Flashfood works with grocers to offload food items that doesn't meet their in store marketing standards and place them at a reduced rate on Flashfood. This allows savvy shoppers to enjoy food at a discounted rate. #winwin.