A typical season ticket into London is under 20p a mile. Outside of London it’s far more expensive (35p a mile is common), because the railway has not had the investment London has over decades. Platform lengthening (of possible) is not cheap, requires buying new land in crowded towns and cities. Modern train stock isn’t cheap either
Most people will commute ~19 days a month, given vacations and sickness.
From my example, that's ~794 miles (corrected) a month, £255, £0.32/mile. Not as expensive as some other routes but still can be as as high as 12% of your take-home wage given the low salaries in that city.
Moving onto London... /under/ 20p a mile? Which route is that??
Just some random examples I picked:
Alton to Waterloo: £529, 1786 miles, £0.29/mile.
Guildford to Waterloo: £453/mo - 1140 miles a month, £0.39/mile.
Gravesend to London Bridge: £436/mo, 836 miles a month, £0.52/mile.
Brentwood to Liverpool St: £336/mo, 706 miles a month, £0.47/mile.
St Albans to Thameslink: £440/mo, 756 miles a month, £0.58/mile.
Brighton is £559/mo for the Thameslink only ticket (the cheaper one) and 50.5 miles to London Bridge. Even being generous saying 22 days a month, that's 25p/mile.
Just give up.
I've proved your "A typical season ticket into London is under 20p a mile" claim wrong multiple times.
Southampton to Waterloo is just about the exception at ~19p/mile if you assume 22 days per month which I think is exceptional.
Annual tickets are 40 weeks meaning 5.75 trips per weekly ticket (230 a year). Newbury works out 21p a mile, Ipswich 23p a mile, Cambridge 22p/mile, so yes prices have crept up just above 20p/mile in the last year or two.
25km each way is 680 miles a month.