Transport

Swiss public transport API

Statistics

Total calls
5'577'351'053

Average calls per day
1'052'132

Max calls for one day
12'208'780


Loading chart ...

Resources

  • /v1/stationboard 3'302'823'836
  • /v1/connections 2'144'202'446
  • /v1/locations 125'028'224
  • /v1/ 517'386
  • /v1 79'559

Stations last 30 days

  • Baden 330'279
  • Winterthur 269'755
  • Biel/Bienne, Stadien/Stades 225'740
  • Chavannes-R., Dorigny 225'314
  • Zürich HB 202'605

More stations and connections

Errors

  • MethodNotAllowedHttpException 405 225'158'617
  • Exception 500 7'656'832
  • RequestException 500 3'751'756
  • ContextErrorException 500 3'273'275
  • NotFoundHttpException 404 1'303'622

All errors in detail

Who calls

Time window: · change

Kind of client

Client Requests Share

Distinct clients per day

Date Clients Half of the requests from 90 % from

Requests by hour of the day

Average requests per hour, rate-limited ones included, over the hours of the window that were recorded.

What is asked for

Time window: · change

Counted exactly as the clients wrote them. A station can be asked for by its name or by its number, the Swiss stop ID (8507000 is Bern), and the count does not look either up: «Bern», «bern» and «8507000» are three entries for the same station, and a station may therefore rank lower than it is asked for. Rate-limited and failed requests are not counted.

Station boards

StationRequests

Connections

From → toRequests

Data sources

What the API answers from, and when it was fetched. Each timetable file is a complete version, not a change to the one before; real time is a complete snapshot every 30 seconds. See Source.

Loaded now

Timetable filesgtfs_fp2026_20260930.zip, gtfs_fp2027_20260930.zip
Days held28.09.2026 – 03.01.2027
Imported05.10.2026 02:32
Street network (OpenStreetMap)547.6 MB, 04.10.2026 20:06

Real time, last 24 hours

Snapshots fetched2'876
Size of a snapshot6'587 kB
Trips with real time per snapshot11'189
Fetched in total18'944.1 MB
Time to fetch (seconds)0.3
Last snapshot08.10.2026 15:47

Timetable files downloaded

WhenFileSize
05.10.2026 02:27gtfs_fp2027_20260930.zip90.4 MB
04.10.2026 18:50gtfs_fp2026_20260930.zip289.0 MB

Imports

WhenDaysStop timesMinutes
None since recording began on 5. October 2026: the days held now were imported on 05.10.2026 02:32. They are imported again when a new timetable file appears, or when the days held move on (once a week).

Stations 2012–2017

The most asked-for stations from 10. August 2012 until 8. June 2017, when the API moved to timetable.search.ch and this count stopped.

StationRequests
Innertkirchen, Grimseltor103'056'869
Bern80'342'006
Lausanne, Fourmi18'643'486
Zürich, Stockerstrasse14'344'856
Lausanne10'903'331
Zürich HB10'848'305
Paris10'244'255
Bern, Bahnhof10'182'338
Ostermundigen, Zollgasse9'714'901
Ecublens VD, EPFL9'499'682

Calls and errors

Errors are answers the API could not give: search.ch failing or timing out, unknown paths, wrong methods, invalid parameters. Rate-limited requests (HTTP 429) are not errors and not counted here. Errors are counted from 22. November 2015 on.

Each bar is the calls of a year or a day, the red part its errors. Hover a bar for the figures and the error rate. The paler bar is the year or day so far; the rate for 2015 counts from 22. November on, and there is none before.

Errors in detail

Calls

Errors

Error rate

Rate limited (429)

Error Status Meaning Count Share