Log the oats by dry weight, before they go in the pan. Fifty grams of dry oats cooked in 200 g of milk comes out as a variable volume of porridge depending on how long it simmers and how much liquid cooks off, and that cooked volume carries no information a tracker can use. Weigh the oats dry, weigh the milk before it goes in the pan, and weigh the 170 g of yogurt as it comes out of the container.
The single biggest logging mistake here is entering this as a generic "oatmeal" entry pulled from a tracker's food database. A generic entry describes plain oats and whatever liquid comes with the default serving, close to the 6.8 g of protein 50 g of dry oats carries on its own. This bowl carries 31.5 g. Logging the shortcut entry understates the meal's protein by roughly 25 g, close to an entire second protein source disappearing from the day's total because of which database row got tapped.
Whey sits outside the baseline, so log it as its own line only on the days it goes into the bowl. If the whey version is the one eaten most mornings, save that combination as its own recipe, separate from the baseline, and keep a second saved recipe for the plain version. One saved recipe that sometimes matches what is in the bowl and sometimes does not is worse than two accurate ones.
Fiber and sugar both read as unavailable here, and that is a reporting gap rather than a zero. Milk and yogurt carry no fiber value on the records used, so the total cannot be completed even though oats and banana report it between them, 5.2 g and 1 g. Sugar fails for the opposite reason: the oats record this bowl is built on carries no sugar value, while milk, yogurt, and banana all report theirs. Whey does not close either gap. It reports its own numbers, 0.6 g of fiber and 0 g of sugar at 20 g, but the total stays unavailable because milk and yogurt are still silent. Do not enter a zero for either field to make the row look complete. A measured zero and an unmeasured value are different facts, and only one is true here.