In testing LopoRail is in active testing — some features may be incomplete or change.
Global Rail Platform

← All country boards · Delay analytics

Train performance · ' . esc_html($plain) . '

Chicago train performance.

Live metra commuter rail punctuality from GTFS-RT. Data updates continuously; this board refreshes every 10 minutes via server cron.

Live board Next refresh in 10:00 Updated 20:40

Reading the board

Four numbers summarise the rolling window. The same metric is then broken down by delay bucket, by route and by station.

29.4%
Departures on time within 60 seconds
Delays≤60s
28
Services running in the current window
Realtimenow
286
Departed stops sampled across 0 hubs
Samplerolling
267.6s
Mean delay per departure
Watchavg

Delay Buckets

How late, and how often

Each departure falls into one bucket by its delay. The bar shows the share of departures in the current window.

On Time (≤60s)84
Minor (1–5m)102
Moderate (5–10m)66
Major (>10m)34

Bucket thresholds are the board\'s own convention: on time ≤ 60s, minor 1–5 minutes, moderate 5–10 minutes, major beyond 10 minutes. Cancelled services are tracked separately and are not folded into these buckets.

Trend

The window and the days behind it

The live window alongside the day-by-day record this board has published since it went live.

Current window

Chicago · rolling window
Live
On time (≤60s)29.4%
Major (>10m)11.9%

Rolling window · compiled from the board\'s own endpoint

Day by day

On time % · last 7 recorded days
7-day 41.1%
Sun 4 Oct48.4%
Mon 5 Oct53.8%
Tue 6 Oct37.1%
Wed 7 Oct33.0%
Thu 8 Oct26.0%
Fri 9 Oct35.5%
Sat 10 Oct53.8%
7-day on time
41.1%
30-day on time
45.1%
Days recorded
16

Day-by-day record · one sample per day (the day\'s busiest pull) · not an official statistic.

By Route

Where trains lose time

Service classes ranked by the share of departures on time. Each row carries the sampled stop count and the average and worst delay.

Metra Electric75 stops sampled
70.7%
avg 137s · max 543s
Union Pacific Northwest62 stops sampled
8.1%
avg 307s · max 922s
Union Pacific North58 stops sampled
44.8%
avg 212s · max 1,165s
Burlington Northern32 stops sampled
0.0%
avg 364s · max 852s
Milwaukee North20 stops sampled
0.0%
avg 501s · max 564s
Milwaukee West18 stops sampled
0.0%
avg 152s · max 325s
Rock Island13 stops sampled
0.0%
avg 532s · max 1,429s
Union Pacific West8 stops sampled
0.0%
avg 457s · max 472s

Top Stations by Volume

The busiest hubs

The same reading, station by station, ordered by how many departures each contributed to the window.

Clybourn5 stops sampled
20.0%
avg 468s · max 1,165s
Chicago OTC5 stops sampled
0.0%
avg 539s · max 1,165s
Van Buren St.4 stops sampled
50.0%
avg 152s · max 352s
Fox River Grove4 stops sampled
25.0%
avg 140s · max 306s
Cary4 stops sampled
25.0%
avg 140s · max 306s
Pingree Road4 stops sampled
25.0%
avg 140s · max 306s
Crystal Lake4 stops sampled
25.0%
avg 140s · max 306s
63rd St.3 stops sampled
66.7%
avg 137s · max 352s
59th St. (U. of Chicago)3 stops sampled
66.7%
avg 137s · max 352s
55th - 56th - 57th St.3 stops sampled
66.7%
avg 137s · max 352s
51st/53rd St. (Hyde Park)3 stops sampled
66.7%
avg 137s · max 352s
47th St. (Kenwood)3 stops sampled
66.7%
avg 137s · max 352s
27th St.3 stops sampled
66.7%
avg 137s · max 352s
McCormick Place3 stops sampled
66.7%
avg 137s · max 352s
18th St.3 stops sampled
66.7%
avg 137s · max 352s
Museum Campus/11th St.3 stops sampled
66.7%
avg 137s · max 352s
Millennium Station3 stops sampled
33.3%
avg 202s · max 352s
Palatine3 stops sampled
0.0%
avg 391s · max 922s
Arlington Park3 stops sampled
0.0%
avg 391s · max 922s
Arlington Heights3 stops sampled
0.0%
avg 391s · max 922s
Mt. Prospect3 stops sampled
0.0%
avg 391s · max 922s
Cumberland3 stops sampled
0.0%
avg 391s · max 922s
Des Plaines3 stops sampled
0.0%
avg 391s · max 922s
Dee Road3 stops sampled
0.0%
avg 391s · max 922s
Park Ridge3 stops sampled
0.0%
avg 391s · max 922s
Edison Park3 stops sampled
0.0%
avg 391s · max 922s
Norwood Park3 stops sampled
0.0%
avg 391s · max 922s
Jefferson Park3 stops sampled
0.0%
avg 391s · max 922s
Irving Park3 stops sampled
0.0%
avg 391s · max 922s
Barrington3 stops sampled
33.3%
avg 84s · max 130s
Lake Bluff3 stops sampled
33.3%
avg 203s · max 484s
Lake Forest.3 stops sampled
33.3%
avg 203s · max 484s
Main St.3 stops sampled
33.3%
avg 430s · max 1,165s
Rogers Park3 stops sampled
33.3%
avg 430s · max 1,165s
Peterson/Ridge3 stops sampled
33.3%
avg 430s · max 1,165s
Ravenswood3 stops sampled
33.3%
avg 430s · max 1,165s
Chicago Union Station3 stops sampled
0.0%
avg 510s · max 852s
87th St.2 stops sampled
100.0%
avg 30s · max 58s
83rd St.2 stops sampled
100.0%
avg 30s · max 58s
Cheltenham (79th St.)2 stops sampled
100.0%
avg 30s · max 58s
Windsor Park2 stops sampled
100.0%
avg 30s · max 58s
South Shore2 stops sampled
100.0%
avg 30s · max 58s
Bryn Mawr2 stops sampled
100.0%
avg 30s · max 58s
Stony Island2 stops sampled
100.0%
avg 30s · max 58s
Gresham2 stops sampled
0.0%
avg 806s · max 1,429s
35th St. - Lou Jones2 stops sampled
0.0%
avg 806s · max 1,429s
LaSalle Street2 stops sampled
0.0%
avg 806s · max 1,429s
National St2 stops sampled
0.0%
avg 228s · max 325s
Elgin2 stops sampled
0.0%
avg 228s · max 325s
Fort Sheridan2 stops sampled
50.0%
avg 62s · max 66s
Highwood2 stops sampled
50.0%
avg 62s · max 66s
Highland Park2 stops sampled
50.0%
avg 62s · max 66s
Ravinia2 stops sampled
50.0%
avg 62s · max 66s
Braeside2 stops sampled
50.0%
avg 62s · max 66s
Glencoe2 stops sampled
50.0%
avg 62s · max 66s
Hubbard Woods2 stops sampled
50.0%
avg 62s · max 66s
Winnetka2 stops sampled
50.0%
avg 62s · max 66s
Indian Hill2 stops sampled
50.0%
avg 62s · max 66s
Kenilworth2 stops sampled
50.0%
avg 62s · max 66s
Wilmette2 stops sampled
50.0%
avg 62s · max 66s
Central St.2 stops sampled
50.0%
avg 62s · max 66s
Evanston (Davis St.)2 stops sampled
50.0%
avg 62s · max 66s
Great Lakes2 stops sampled
50.0%
avg 271s · max 484s
North Chicago2 stops sampled
50.0%
avg 271s · max 484s
Waukegan2 stops sampled
50.0%
avg 271s · max 484s
Kensington2 stops sampled
50.0%
avg 273s · max 543s
Western Ave2 stops sampled
0.0%
avg 295s · max 459s
Western Avenue2 stops sampled
0.0%
avg 469s · max 852s
Cicero2 stops sampled
0.0%
avg 469s · max 852s
Berwyn2 stops sampled
0.0%
avg 469s · max 852s
Harlem Ave.2 stops sampled
0.0%
avg 469s · max 852s
Riverside2 stops sampled
0.0%
avg 469s · max 852s
Hollywood2 stops sampled
0.0%
avg 469s · max 852s
Brookfield2 stops sampled
0.0%
avg 469s · max 852s
LaGrange Road2 stops sampled
0.0%
avg 469s · max 852s
Western Springs2 stops sampled
0.0%
avg 469s · max 852s
Aurora2 stops sampled
0.0%
avg 258s · max 430s
Woodstock2 stops sampled
0.0%
avg 126s · max 130s
Brainerd1 stop sampled
0.0%
avg 182s · max 182s
111th St. (Pullman)1 stop sampled
0.0%
avg 543s · max 543s
State St.1 stop sampled
0.0%
avg 543s · max 543s
Stewart Ridge1 stop sampled
0.0%
avg 543s · max 543s
West Pullman1 stop sampled
0.0%
avg 543s · max 543s
Racine1 stop sampled
0.0%
avg 543s · max 543s
Ashland1 stop sampled
0.0%
avg 543s · max 543s
Burr Oak1 stop sampled
0.0%
avg 543s · max 543s
Blue Island1 stop sampled
0.0%
avg 543s · max 543s
Northbrook1 stop sampled
0.0%
avg 459s · max 459s
Glen/N. Glenview1 stop sampled
0.0%
avg 459s · max 459s
Glenview1 stop sampled
0.0%
avg 459s · max 459s
Golf1 stop sampled
0.0%
avg 459s · max 459s
Morton Grove1 stop sampled
0.0%
avg 459s · max 459s
Edgebrook1 stop sampled
0.0%
avg 459s · max 459s
Forest Glen1 stop sampled
0.0%
avg 459s · max 459s
Mayfair1 stop sampled
0.0%
avg 459s · max 459s
Grayland1 stop sampled
0.0%
avg 459s · max 459s
Healy1 stop sampled
0.0%
avg 459s · max 459s
79th St. (Chatham)1 stop sampled
100.0%
avg 2s · max 2s
87th St. (Woodruff)1 stop sampled
100.0%
avg 2s · max 2s
103rd St. (Rosemoor)1 stop sampled
100.0%
avg 2s · max 2s
Riverdale1 stop sampled
100.0%
avg 2s · max 2s
Ivanhoe1 stop sampled
100.0%
avg 2s · max 2s
147th St.1 stop sampled
100.0%
avg 2s · max 2s
Harvey1 stop sampled
100.0%
avg 2s · max 2s
Hazel Crest1 stop sampled
100.0%
avg 2s · max 2s
Calumet1 stop sampled
100.0%
avg 2s · max 2s
Homewood1 stop sampled
100.0%
avg 2s · max 2s
Flossmoor1 stop sampled
100.0%
avg 2s · max 2s
Olympia Fields1 stop sampled
100.0%
avg 2s · max 2s
211th St.1 stop sampled
100.0%
avg 2s · max 2s
Matteson1 stop sampled
100.0%
avg 2s · max 2s
Richton Park1 stop sampled
100.0%
avg 2s · max 2s
University Park1 stop sampled
100.0%
avg 2s · max 2s
Kedzie1 stop sampled
0.0%
avg 410s · max 410s
Lake Forest1 stop sampled
0.0%
avg 564s · max 564s
Libertyville1 stop sampled
0.0%
avg 564s · max 564s
Prairie Crossing1 stop sampled
0.0%
avg 564s · max 564s
Grayslake1 stop sampled
0.0%
avg 564s · max 564s
Round Lake1 stop sampled
0.0%
avg 564s · max 564s
Long Lake1 stop sampled
0.0%
avg 564s · max 564s
Ingleside1 stop sampled
0.0%
avg 564s · max 564s
Fox Lake1 stop sampled
0.0%
avg 564s · max 564s
Wheaton1 stop sampled
0.0%
avg 472s · max 472s
Winfield1 stop sampled
0.0%
avg 472s · max 472s
West Chicago1 stop sampled
0.0%
avg 472s · max 472s
Geneva1 stop sampled
0.0%
avg 472s · max 472s
La Fox1 stop sampled
0.0%
avg 472s · max 472s
Elburn1 stop sampled
0.0%
avg 472s · max 472s
Zion1 stop sampled
100.0%
avg 58s · max 58s
Winthrop Harbor1 stop sampled
100.0%
avg 58s · max 58s
Kenosha1 stop sampled
100.0%
avg 58s · max 58s
Hinsdale1 stop sampled
0.0%
avg 85s · max 85s
Clarendon Hills1 stop sampled
0.0%
avg 85s · max 85s
Westmont1 stop sampled
0.0%
avg 85s · max 85s
Fairview Ave.1 stop sampled
0.0%
avg 85s · max 85s
Downers Grove1 stop sampled
0.0%
avg 85s · max 85s
Belmont1 stop sampled
0.0%
avg 85s · max 85s
Lisle1 stop sampled
0.0%
avg 85s · max 85s
Naperville1 stop sampled
0.0%
avg 85s · max 85s
Route 591 stop sampled
0.0%
avg 85s · max 85s
Halsted Street1 stop sampled
0.0%
avg 852s · max 852s
Harvard1 stop sampled
0.0%
avg 121s · max 121s
South Chicago (93rd)1 stop sampled
100.0%
avg 1s · max 1s
Tinley Park1 stop sampled
0.0%
avg 316s · max 316s
Tinley-80th1 stop sampled
0.0%
avg 316s · max 316s
Hickory Creek1 stop sampled
0.0%
avg 316s · max 316s
Mokena1 stop sampled
0.0%
avg 316s · max 316s
New Lenox1 stop sampled
0.0%
avg 316s · max 316s
Joliet1 stop sampled
0.0%
avg 316s · max 316s
Galewood1 stop sampled
0.0%
avg 130s · max 130s
Mont Clare1 stop sampled
0.0%
avg 130s · max 130s
Elmwood Park1 stop sampled
0.0%
avg 130s · max 130s
River Grove1 stop sampled
0.0%
avg 130s · max 130s
Franklin Park1 stop sampled
0.0%
avg 130s · max 130s
Bensenville1 stop sampled
0.0%
avg 130s · max 130s
Wood Dale1 stop sampled
0.0%
avg 130s · max 130s
Itasca1 stop sampled
0.0%
avg 130s · max 130s
Medinah1 stop sampled
0.0%
avg 130s · max 130s
Roselle1 stop sampled
0.0%
avg 130s · max 130s
Schaumburg1 stop sampled
0.0%
avg 130s · max 130s
Hanover Park1 stop sampled
0.0%
avg 130s · max 130s
Bartlett1 stop sampled
0.0%
avg 130s · max 130s

Delay Repay

Was your train delayed?

If a journey on this network ran late, you may be owed money back. Check your refund in a couple of minutes — no claim knowledge needed.

Check your refund instantly ↗

Independent helper. Refunds depend on the operator's Delay Repay scheme.

Provenance

About this data

Every board states where its numbers come from and what they mean, in the one place a reader will look for it.

Source
Official live departures feed for Chicago, polled server-side every 10 minutes.
Metric
Per-departure delay in seconds (realtime − planned time).
On time
Delay ≤ 60 seconds. Early trains count as on time.
Late
Delay > 60 seconds · cancelled services tracked separately.
Coverage
The monitored hub stations, rolling ~20-minute window (staggered pulls).
Not an official Chicago performance statistic. This board publishes the rolling live window only; extended 7- and 30-day views shown in prototypes are labelled samples and are not data.

Another country, the same reading.

Every board reads exactly like this one — one metric, stated plainly, with its own provenance attached.

Browse every board
ESC
Go to
↑↓ to move ↵ to open Esc to close
Advertise Sponsorship

Report a problem

Tell us what is not working or looks broken. We attach the page and your browser automatically — no need to describe the technical side.

Routed to the right desk.

Mastodon Lemmy Pixelfed