To give context both last Saturday and Sunday I went to visit London. In both days I've travelled from relatively "early" morning (before 10am) to late evening (8:00pm), which I think falls under "off-peak" (from Staines-upon-Thames to say Westminster).
According to TFL from Zone 9 to Zone 1 for pay as you go the cap is £16.30 per day but I ended up paying £22.40 per day.
I cannot quite work out how this happened, also how to ask a refund and further info on the calculation is a bit of a mystery.
In one of the two days mentioned from 9:44 to 20:46 the journey was
Staines -> Waterloo (National Rail)
Waterloo -> Baker Street (Underground)
GreenPark -> London Bridge (Underground)
London Bridge -> Waterloo (Underground)
Waterloo -> Staines (National Rail)
Everything tapped, there's no indication of missed station.