How We Built a Real-Time Transit App for 85,000 People
The Isle of Man has a population of about 85,000 and a public transit network covering 50+ bus routes, 3 heritage railways, and 850+ stops. What it did not have, until recently, was any of that data in a format that modern apps and journey planners could use. Bus Vannin's timetables existed as Excel spreadsheets and PDFs. The heritage railways published printed leaflets and web pages with timetables. There was no unified, machine-readable dataset describing public transport on the island. We set out to change that.
The Problem: No Standard Data
Google Maps, Apple Maps, Citymapper, and virtually every transit app in the world rely on a data format called GTFS - the General Transit Feed Specification. Originally developed by Google and the Portland, Oregon transit agency in 2005, GTFS is now the global standard for publishing public transit schedules. A GTFS feed is a simple ZIP file containing CSV files that describe stops, routes, trips, departure times, and operating calendars. If your transit agency publishes GTFS, your city's buses show up in Google Maps. If it does not, they do not. The Isle of Man did not publish GTFS. Bus Vannin maintained timetable data in internal Excel workbooks. The heritage railways - the Isle of Man Steam Railway, the Manx Electric Railway, and the Snaefell Mountain Railway - published timetables as PDFs and printed booklets. None of this data was in a format that any transit app could consume.
The Pipeline: Excel to GTFS
We built a data pipeline that takes Bus Vannin's Excel timetable files as input and produces a valid GTFS feed as output. The pipeline extracts trip data from each spreadsheet, matches it against a reference GTFS dataset to determine the correct stop sequences and geographic coordinates, and interpolates intermediate stop times where the Excel data only lists major timing points. The result is a complete set of departure times for every stop on every trip on every route. The process is not as straightforward as it sounds. Bus Vannin's spreadsheets were designed for human readers, not machines. Columns represent individual trips, rows represent stops, but the layout varies between routes. Some routes have multiple variants (different paths on different days), short workings (trips that do not run the full route), and seasonal exceptions. Our parser handles all of these cases, automatically detecting route variants and assigning them to the correct GTFS trip patterns.
Real-Time Vehicle Tracking
Static timetables tell you when a bus is supposed to arrive. Real-time tracking tells you where the bus actually is. Bus Vannin equips its fleet with tracking systems that report positions powering the findmybus.im website. We built a connector that subscribes to this position feed in real time, matches each vehicle to its scheduled trip, and exposes the data as a GTFS-realtime feed. When you see a "LIVE" badge in Kivoon showing a bus three minutes away, that estimate is computed from the bus's actual position on the road, not from the printed timetable.
Plan your journey with Kivoon - free on iOS and Android
Download Kivoon — free on iOS & AndroidThe Numbers
The current GTFS feed for the Isle of Man contains 50+ route variants across 156 timetable groups, producing 734 scheduled trips parsed from Excel timetables. The stop database contains 850+ stops with precise geographic coordinates. The three heritage railway lines add further scheduled services. All of this data is rebuilt automatically whenever a timetable is updated, validated against structural integrity checks, and versioned so we can track changes over time.
Why Open Transit Data Matters
For a small island community, having transit data in a standard format has consequences beyond a single app. GTFS is the foundation that allows journey planners, accessibility tools, research projects, and third-party applications to work with public transport information. When a visitor lands at Ronaldsway Airport and asks their phone how to get to Douglas, the answer should come from accurate, up-to-date, machine-readable data - not from a PDF buried on a government website. We believe that transit data should be open and accessible. The GTFS specification itself is open. The tools we have built to process Isle of Man timetables are designed to be maintained and updated as services change. Kivoon is the first consumer of this data, but it should not be the last. Every community, regardless of size, deserves transit information that works with the tools people actually use.
See it in action - download Kivoon
Download Kivoon — free on iOS & Android