You can identify and fix errors that can cause issues with your feed and trips.
Important: If you're located in a country where English isn't the native language, all errors show up in English.
Feed expirationThe majority of services in a feed expire within 60 days. To avoid gaps in service for users, feeds must include the current date along with dates in the near future.
Learn more about feed expiration and guidelines for feeds.
The feed has more than 6 months of data, but doesn’t define calendar exceptions for holidays or other service modifications in the calendar_dates.txt
file. This may cause problems since most feeds have service exceptions over long time frames.
If your feed doesn’t contain calendar date exceptions, ignore this warning.
- Stop too far from shape
- Stops match shape in wrong order
It’s common to match stops with shape
data for routes and trips. The shapes.txt file can define the travel path for a particular trip
. In trips.txt
, you can link the trip
to a shape
with the shape_id field
.
A trip
also defines a sequence of stops in the stop_times.txt
file for the stops visited during the course of the trip
. To show the path of travel between 2 stops in routing results, you can define the shape
for a trip
to match the sequence of stops to their closest location along the trip shape
.
Our GTFS validation tool often reports 2 common warnings for stop-to-shape
matching. Follow the links for specific guidance on diagnosing those issues.
Complex trip shapes
It can be tricky to match stops to a trip
shape
when a trip
has a complex geometry, such as loops or overlapping sections. Our software does its best to match a stop
to its best location along a shape
. When that process fails, it may indicate a problem with your shape
data, stop
locations, or the stop
sequence of a trip
.
For complex shape
and stop
sequences, the GTFS specification provides a way to define how stops are matched to the trip shape
.
- The
shapes.txt
file defines ashape_dist_traveled field
, which can specify the distance along theshape
for each point of theshape
. - The
stop_times.txt
file also defines ashape_dist_traveled field
, which can specify distance along theshape
for eachstop
along atrip
.
When both fields are defined for the shape
and each stop
belongs to a trip
, the distance values can explicitly determine where each stop
matches to a shape
.
Example
The trips.txt file
trip_id,route_id,service_id,shape_id
t0,r0,weekly,shape0
The shapes.txt file
shape_id,shape_pt_sequence,shape_pt_lat,shape_pt_lon,shape_dist_traveled
shape0,0,47.0,-122.0,0
shape0,1,47.1,-122.0,100
shape0,2,47.1,-122.1,200
The stop_times.txt file
trip_id,stop_sequence,stop_id,arrival_time,departure_time,shape_dist_traveled
t0,0,stop0,09:00:00,09:00:00,50
t0,1,stop1,09:30:00,09:30:00,175
The example shows a simple trip
with a simple shape of 2 stops, and shape_dist_traveled
values for both the shape
and each stop
.
First, stop0
has a shape_dist_traveled
value of 50. Our shape
points show that 50 falls between the first 2 points, which have shape_dist_traveled
values of 0 and 100, respectively. That puts the stop-to-shape
match roughly halfway between the 2 shape
points at approximately 47.05, -122.0
.
Next, stop1
has a shape_dist_traveled
value of 175
, which puts it between the last 2 shape
points. Since the stop
is about 3/4 of the way between the 2 points according to the shape
distance, the stop-to-shape
match is approximately 47.1, -122.75
.
You can use whatever units you prefer for shape_dist_traveled
values, such as meters or feet. Feed consumers won’t assume particular units. Instead, the values can only be used to determine how a stop
matches positions along a shape
.
If you get a "Sorry, we don't have transit schedule data at the time and date you specified" error message, you may have a trip plan that doesn't have any feasible results at the specified time. This may happen because of at least one of the following causes:
- At the time and date you specified, there’s no scheduled service in the next 24 hours.
- There's scheduled service, but the GTFS feed doesn’t include these trips because either the feed expired or there’s an error in the feed.
- The trip is more than 2 months in the future. Google Maps only supports trip routes that begin in the next 2 months.
Error in English: Submit fares for multiple agencies
To submit fares for multiple agencies in your feed, add a column “agency_id
” into fare_attributes.txt
. Then, for each fare, fill in the agency_id
.
Tip: A fare can only belong to one agency. To have a fare that belongs to several agencies, you must duplicate the fare.
If it takes less time to go by foot, a trip option may suggest to travel by foot instead of public transport.
If you’re the agency, make sure to provide arrival and departure times for all stops in a trip. Stops without arrival times are scheduled based on the nearest preceding timed stop.
If the information still isn’t available, notify the Google Transit team.
Report a problem
Have you found a problem in Transit results on Google Maps? Please send feedback.
Common problems:
- Seeing "We don't have the most recent timetables for this area." warning
- No public transit results available
- Missing my routes (bus/train/tram/ferry)
- Wrong bus stop location
- Non optimal route suggestions
- Wrong route shapes
- Wrong route color
- Wrong fare
- Wrong schedule
- Wrong entrances
- Wrong translations
- Wrong timetables
- Wrong arrival predictions
- Wrong crowd size
- Wrong station linking - When a passenger searches for directions on Google Maps and types a generic location (e.g. a city or an airport) as the starting point or destination, Google Maps shows an incorrect entrance or exit.
- Wrong walking directions - Google Maps recommends an incorrect path or poor walking directions.
In order for Google to best investigate the problem, please include a screenshot and provide details (e.g. transit agency name, line name) in your feedback.