← Back to Energy & Environment
Type city/station; autocomplete included. You can also enter a manual distance below.
Display currency (simple rate).
Adjusts fuel/electricity price & train €/km bands.
Display unit; calculations remain in km internally.
Edit detailed assumptions in the full app.
Advanced (parking, tolls, local transit, carbon price, manual km)
Uses UK Government conversion factors (2025) per-km defaults (see Sources).
Open full comparison
Enter two cities (or a distance) and click Calculate.
🔍

    🧭 Overview

    The Car vs Train Cost Calculator estimates door-to-door travel costs and CO₂e for one-way or round-trip journeys. Enter two cities (or override the distance), choose passengers, and tweak parking, tolls/congestion, first/last-mile transit, class & rail discounts. You can also apply an optional carbon price to internalize emissions. The tool returns total and per-passenger results, a breakdown by cost component, a micro-bar legend, and a sparkline showing how per-passenger cost changes with group size. Use Open full comparison to fine-tune assumptions in detail.

    ⚙️ How the calculator works

    • Distance: Great-circle (Haversine) between city coordinates. You can enter a manual distance to override.
    • Car cost per-km: fuel/energy €/km + maintenance €/km + depreciation €/km. Then add tolls + parking (optionally per leg) and optional carbon price × kgCO₂e/km × distance.
    • Train: Base fare uses distance bands (€/km) × class multiplier × optional discount, plus reservation per passenger per leg and simple local transit per passenger per leg. Optional carbon price uses rail kgCO₂e per-km-per-passenger.
    • Per-passenger: Car total ÷ passengers vs. train per-passenger fare. The winner badge and per-unit badges (€/km or €/mi; kg CO₂e/km or /mi) help compare quickly.
    • Regions & currency: EU/UK/US presets adjust fuel/electricity and rail bands. Display currency converts from EUR using a simple rate (optionally refreshed daily).

    🧮 Formulas

    Car total (€) =
      D × (Fuel/energy€/km + Maint€/km + Depr€/km)
      + Tolls
      + Parking(€/h × hours) [× legs if "per leg" is on]
      + CarbonPrice(€/kg) × (Car_kgCO₂e/km × D)
    
    Train total (€) =
      (D_oneway × Fare€/km × ClassMult × Discount) × legs × passengers
      + Reservation(€ per pax per leg) × legs × passengers
      + LocalTransit(€ per pax per leg) × legs × passengers
      + CarbonPrice(€/kg) × (Rail_kgCO₂e/km/pax × D × passengers)
    
    Per-passenger:
      Car_pp = Car total ÷ passengers
      Train_pp = Train total ÷ passengers
    
    Emissions (not priced):
      Car_total_CO₂e = Car_kgCO₂e/km × D
      Train_total_CO₂e = Rail_kgCO₂e/km/pax × D × passengers
    

    Emissions factors: defaults align with the UK Government’s Greenhouse gas reporting: conversion factors 2025 (cars & rail; per-km, per-passenger). See gov.uk/conversion-factors.

    📏 Key assumptions (defaults)

    • Car profiles (€/km, kg CO₂e/km) — Petrol 7.0 L/100 km @ €1.80/L, Maint €0.05, Depr €0.10, CO₂e 0.171; Diesel 5.5 L/100 km @ €1.75/L, CO₂e 0.164; Hybrid 4.5 L/100 km @ €1.80/L, CO₂e 0.120; EV 17 kWh/100 km @ €0.28/kWh, Maint €0.04, Depr €0.09, CO₂e 0.045.
    • Train (EU preset): bands ≤80 km: €0.25/km; ≤300 km: €0.16/km; >300 km: €0.12/km; class multiplier: Standard 1.0, 1st 1.5; rail discount factor ≈0.67; reservation €3 per pax per leg; local transit default €4 per pax per leg; rail CO₂e 0.041 kg/km/pax.
    • Units: Internal km; UI toggles km/mi. Currency: Internal EUR; display converts to your currency selection.
    • Round trip: All per-leg items scale with legs = 2 (reservation, local transit, per-leg parking/tolls if enabled).

    🧪 Worked example (matches the calculator)

    Route: Berlin → Munich, 504 km (great-circle), one-way, 1 passenger, EU preset, EUR, Standard class, no rail discount, parking/tolls = 0, local transit €4/pax/leg, reservation €3/pax/leg, carbon price = 0.

    • Car (petrol): fuel 7.0 L/100 km @ €1.80/L → €0.126/km; maint €0.05/km; depr €0.10/km ⇒ €0.276/km.
      Distance D = 504 km → car variable = 504 × 0.276 = €139.104.
      Tolls+Parking = €0; Carbon price = €0 ⇒ Total = €139.10 (per-passenger = €139.10).
    • Train (standard): band >300 km → €0.12/km; base fare one-way = 504 × 0.12 = €60.48.
      Reservation = €3; Local transit = €4 ⇒ Per-passenger = €60.48 + €3 + €4 = €67.48 (total for 1 pax = €67.48).
    • Winner: Train cheaper by €72 (≈51%).
    • Emissions: Car = 0.171 × 504 = 86.2 kg CO₂e; Train = 0.041 × 504 × 1 = 20.7 kg CO₂e → Train lower by 65.5 kg (≈76%).
    • Break-even passengers (same assumptions): n ≈ Car_total / Train_pp = €139.10 / €67.48 ≈ 2.06 → with 3+ passengers, car per-person becomes cheaper.

    🧠 How to read the results

    • Winner badge: shows cheaper mode and % versus the other side’s total.
    • Micro-bars + legend: Each bar splits the total into components (Fuel/Energy, Maintenance, Depreciation, Tolls+Parking, Carbon price). Hover for tooltips.
    • Sparkline + legend: Two lines (Car, Train) show per-passenger cost as your group size increases from 1→5. Car line slopes down (cost split across more people); train is relatively flat.
    • Per-unit badges: Quickly compare €/km (or €/mi) and CO₂e per-km (or per-mi) per passenger.
    • Round trips: Reservation and local transit apply per passenger per leg. Car parking/tolls can be toggled “per leg”.

    💡 Popular use cases

    • Budgeting weekend trips and family holidays (is an extra passenger the tipping point?).
    • Estimating work travel costs with or without railcards/discounts.
    • Sustainability reporting or shadow-pricing trips with a carbon price.
    • Comparing EV vs petrol/diesel costs across regions (EU/UK/US).
    • Quick sanity-checks before checking live train fares or fuel prices in the full app.

    📝 Tips for accurate comparisons

    • Use Region preset to align prices (EU/UK/US) and optionally switch units. You can still set currency independently.
    • Add realistic parking hours for city centers and any tolls/congestion on your route.
    • Keep local transit for train realistic: airport/metro/bus/taxi to/from stations.
    • Try a small carbon price (e.g., €0.10–€0.20/kg CO₂e ≈ €100–€200/tCO₂e) for internal decisions.
    • For ferries/tunnel, add them under Tolls. For intercontinental trips, plan each land leg separately (the tool shows an ocean-crossing warning).

    ❓ FAQ

    Are the results real train ticket prices?
    No—fares are modeled from €/km bands plus reservation and simple first/last-mile. Real tickets vary by operator, time, and advance purchase. Use this as a planning estimate and open the full app (or ticket sites) for exact prices.
    Where do the emissions numbers come from?
    Per-km factors are aligned with UK Government conversion factors (2025). Cars use vehicle-level kg CO₂e per km; rail uses per-passenger per km. Totals scale by distance and legs.
    What does the “carbon price” do?
    It monetizes emissions: € per kg × total kg CO₂e. Set to zero to exclude; set to a value (e.g., €0.15/kg) to include climate externalities in totals.
    Why is the train line flatter in the sparkline?
    Train costs scale per passenger, so splitting among more travelers barely changes per-passenger cost. The car line drops because a mostly fixed total is split across more people.
    Do parking and tolls apply on both outbound and return?
    Yes if you keep “Apply per leg” on. If you uncheck it, parking/tolls are added once for the whole trip (useful for one-off charges).
    How are round trips handled?
    We set legs = 2. Train fare, reservations, and local transit scale with legs × passengers. Car variable costs scale with total distance; per-leg parking/tolls are multiplied if enabled.
    Why is the distance slightly different from the road/rail distance on maps?
    This tool uses the great-circle distance for speed. It’s usually close for medium/long trips. Enter a manual distance if you know the driven/rail km.
    Do you include time, delays, or reliability?
    No—this version focuses on money and emissions. The full app includes more context, but not live delays.
    How do EVs compare to petrol/diesel?
    EV energy €/km is often lower, so EVs tend to be cheaper especially with higher electricity-to-fuel price gaps. You can switch profile to EV to see the impact immediately.
    What are the default car costs per km?
    Petrol ≈ €0.276/km; Diesel ≈ €(5.5/100×€1.75 + 0.05 + 0.10) = €0.2475/km; Hybrid ≈ €(4.5/100×€1.80 + 0.05 + 0.10) = €0.231/km; EV ≈ €(17/100×€0.28 + 0.04 + 0.09) = €0.206/km. Region presets alter the energy price inputs.
    What are the EU train bands?
    ≤80 km: €0.25/km; ≤300 km: €0.16/km; >300 km: €0.12/km. UK and US presets use different bands and reservation values.
    Does the “Rail discount” match my card exactly?
    It’s a generic factor (-33%) to illustrate impact. Use the full app for precise products (e.g., BahnCard, Railcards) if available.
    Do you include seat reservations on every train?
    We add a simple reservation charge per passenger per leg (defaults: EU €3, UK €2, US €0). Some services include reservations; adjust if you need zero.
    What about ferries or Eurotunnel?
    Treat these as Tolls. For UK↔EU, also consider fuel, parking, and potential local transit on the rail side.
    Can I share or export results?
    Yes: use Copy, Export to TXT, Print, or Save as PDF. The Share Link button copies a URL with your inputs so others can open the same scenario.
    My trip crosses an ocean. Why do I see a warning?
    Car/train isn’t feasible across oceans. The tool shows an alert and suggests estimating each land leg separately and adding a flight in the full comparison.
    Does currency selection change the math?
    No—calculations run in EUR internally. Currency selection only changes how values are displayed (with a cached daily FX refresh when available).
    Why do micro-bars sometimes show tiny segments?
    We keep a minimum visible width for any positive component so you can still hover and see the tooltip. Zero or negative components render as zero-width.
    What happens when I switch units (km/mi)?
    Calculations still run in km; displays convert to your chosen unit. If you entered a manual distance, we convert the value so the meaning is preserved.
    How precise are the numbers?
    Money is shown to two decimals (rounded); some badges and percentages round to whole numbers for readability. Emissions display as kg (or t if large).

    🧰 Actions & workflow

    • Calculate / Update: Runs the model and auto-scrolls to the results.
    • Clear: Resets inputs and auto-scrolls to the top of the form.
    • Copy / Export / Print / Save as PDF / Share Link: One-click outputs for collaboration and record-keeping.
    • Open full comparison: Deep link with your inputs to the advanced tool.

    ⚠️ Disclaimer

    This is a planning and education tool. Results are estimates based on the assumptions shown and public emissions factors. Real-world prices vary by operator, timing, traffic, and currency rates. No warranties; use at your own discretion. Always verify before purchasing tickets or making expense claims.

    📚 Sources

    • UK Government — Greenhouse gas reporting: conversion factors 2025 (emission factors for cars & rail).
    • City coordinates: curated datasets & public sources (e.g., GeoNames) for place matching.