Short answer Build each main meal around a visible protein source, log beans, grains, nuts, dairy, eggs, and soy as the mixed-macro foods they are, then save combinations you enjoy enough to repeat.

Choose the protein before the garnish

Start the meal with tofu, tempeh, seitan, lentils, beans, edamame, eggs, Greek yogurt, cottage cheese, or another protein source that fits how you eat. Then build the rest of the plate around it.

This prevents the common “everything had a little protein” day where the total still ends up lower than expected.

FoodMacros it bringsEasy meal role
Tofu or tempehProtein + fatStir-fry, bowl, sandwich
Beans or lentilsProtein + carbsChili, curry, soup, salad
Greek yogurt or cottage cheeseProtein + some carbsBreakfast, snack, sauce
Nuts and seedsFat + some proteinTopping, snack, spread

Count mixed foods honestly

Beans are not only protein; they also bring carbohydrates. Nuts are not only protein; they bring plenty of fat. Cheese can contribute protein and fat. That is useful nutrition, and the log should represent the whole food instead of putting it into one mental box.

Macros for Humans can break a meal into those overlapping parts so you do not have to do the accounting yourself.

Build a small rotation

Pick two breakfasts, two lunches, and two dinners that make protein easy. Save the recipe or meal after the first useful estimate. Variety can happen around the anchors through fruit, vegetables, grains, sauces, and toppings.

A repeatable vegetarian day
Greek yogurt, oats, fruitbreakfast anchor
Lentil soup and toastlunch anchor
Tofu rice bowl with vegetablesdinner anchor
Keep the anchors. Change the flavors.

Use the weekly total to find the gap

If the protein total repeatedly comes up short, look for the easiest meal to improve. Breakfast may need a stronger anchor. A snack may need to do more work. Dinner does not have to rescue the whole day.

Sources