This to add
With a 13-year-old in the group you are carrying a discount engine most visitors never switch on. ![]()
Transport, 2026 prices
Never buy a single. Contactless caps at Β£8.90 a day in Zones 1β2, then the day is free to keep riding
Buses Β£1.75, unlimited changes within an hour, Β£5.25 a day cap
11β15 Zip Oyster for the 13-year-old β 50%+ off every journey; apply before you fly, the photo card arrives by post
Under-11s ride free with a 5β10 Zip card
Free, and it feels expensive
British Museum Β· Natural History (the blue whale) Β· Science Museum Β· V&A Β· Tate Modern β all free Β·
Sky Garden, free with an online booking Β·
Winter Wonderland, free entry Β·
Changing the Guard
The 2-for-1 trick β keep a paper rail ticket or Travelcard and National Rail 2FOR1 turns two entries into one paid ticket at the big attractions. ![]()
Sleep and eat β
short lets on OpenRent skip agency fees, Premier Inn family rooms beat the booking sites Β·
supermarket meal deals, Too Good To Go in the evening, Wetherspoons for a cheap sit-down dinner
Two habits β always pay in GBP when a terminal offers the choice, and tap a Revolut or Wise card instead of your bankβs. ![]()
Flights: DAL over DFW, with alerts on Secret Flying and Fly4Free β Dec 3β7 lands just before the Christmas surge. ![]()
Everything above is the what. This is the build β five pieces you can put together in an evening, all free to start. ![]()
Your own flight-price watch (20 lines of Python)
fast-flights β
2.1k Β· MIT reads Google Flights directly, and the Amadeus Self-Service API gives you a free developer tier for real fare data. Run it nightly for DALβLHR on Dec 3β7, log the price, and book the day it drops β that beats refreshing tabs for a week.
from fast_flights import FlightData, Passengers, get_flights
r = get_flights(
flight_data=[FlightData(date="2026-12-03", from_airport="DAL", to_airport="LHR")],
trip="one-way", seat="economy", passengers=Passengers(adults=2, children=1),
fetch_mode="fallback")
print(r.current_price)
Split My Fare β UK trains sold as one ticket cost more than the same trains sold in pieces. Split My Fare does the slicing automatically; on a family trip it routinely halves the fare. Cheap, fast, and it works from Dallas before you fly.
Free stays that are genuinely free β BeWelcome and Trustroots are hospitality networks with no fee and no subscription, unlike the ones that charge to look.
A water-and-toilets map you build yourself β Overpass Turbo runs one query against OpenStreetMap:
node["amenity"="drinking_water"](51.47,-0.20,51.55,0.00); out;
Add amenity=toilets and leisure=playground to the same query and you have a personalised family map of London β free water, free loos, and a playground whenever the 13-year-old needs a break. The Refill app does the water half if you would rather not build it.
Wasted-food dinners β Too Good To Go sells end-of-day restaurant boxes for a few pounds, and central London is dense with them. Three dinners, one tenth of the price. ![]()

!