Fix: stop times without a timepoint value
Published: . Last reviewed: .
Code: missing_timepoint_value (MobilityData validator)
What this means
stop_times.txt has a timepoint column, but some rows leave it blank. The
column says whether each arrival time is a real, scheduled checkpoint
(timepoint=1) or an interpolated estimate (timepoint=0). Blank rows leave
consumers guessing which kind each time is.
Why it matters
Trip planners and realtime systems treat checkpoint times differently from estimates: a checkpoint anchors predictions, an estimate can flex. When the field is blank, an app has to assume, and its assumption may present your estimated times as promises. Riders then hold the schedule to a precision it never claimed.
How to fix it
- In your export settings, look for an option that writes timepoint flags, often tied to which stops your schedulers mark as time checks. If your tool wrote the column at all, it usually can fill it.
- If every published time is a real scheduled time, setting
timepoint=1on all rows is honest and clears the warning. - If only some stops are time checks, mark those
1and the rest0; the scheduling data usually already knows which is which.
How long it usually takes
Usually one export setting. If the column has to be filled from scratch, a bulk edit keyed on your time-check stops does it in an afternoon.
Authoritative rule
missing_timepoint_value is a canonical MobilityData GTFS Validator notice used in validator reports across the GTFS ecosystem. Read the authoritative rule for missing_timepoint_value in the GTFS Validator rules. (opens on an external site)
After you republish
Once the changed feed is live at your published URL, the next scorecard run checks it again. When the same complete producer contract no longer reports this finding, it can be recorded as a dated finding clearance. That confirms the later feed state, not who changed the feed or why.