howbadisthetrain.comis a small, independent project that scores every NYC subway line from 0 to 10 based on what's actually happening right now — delays, crowding, planned work, the lot. It's built for riders who want a quick honest read before they head to the platform.
Why
The MTA's own service status pages are accurate but unfriendly to skim — they were designed for commuters with spare time on the platform, not for someone deciding between the F and an Uber at 11pm on a Wednesday. We built the version we wanted to use.
Who
One person, working on this in the open. The site is hosted on a small VPS, fronts the MTA's GTFS-realtime feeds (or stub data, until the live integration ships — see the methodology page), and earns revenue through Google AdSense. There is no team, no funding, no growth targets, and no roadmap beyond making the score honest and the page fast.
How
- Next.js (app router) on Node 20.
- Tailwind for styling, with a small custom palette that borrows from the MTA line colors but stays distinct from any single roundel.
- Docker + Caddy + Cloudflare for the serving stack.
- ISR + edge caching to keep the homepage snappy without hammering the MTA feed.
- TypeScript end-to-end. No client-side analytics beyond Cloudflare's privacy-friendly web analytics (when enabled).
What we don't do
- We don't require an account. There is no signup, no login, no profile.
- We don't sell or share any data. The site sets no first- party cookies.
- We don't editorialize on the lines themselves beyond the tone of the labels — no safe/dangerous coding, no neighborhood commentary, no culture-war bait.
Get in touch
Bug reports, scoring disagreements, line-color corrections, and methodology questions all welcome: [email protected]. We read every email.
Open-source pieces
The site itself isn't open source (yet). The pieces that could be useful to other transit-data hackers — the MTA feed parser, the scoring math, the lineup of static assets — are something we'd consider releasing if there's interest. Email us if you'd find them useful.
See also: Methodology, Privacy, Terms.