For the best possible user experience, ensure your transit feeds are compliant with Google’s quality requirements before they're launched to the general public.
Please see GTFS Schedule Best Practices for information on the correct formatting of GTFS feeds.
General content requirements
The following general rules apply to all user-facing information, including route names, trip headsigns, trip short names, stop names, stop headsigns, and agency names:
- Consistent naming: Keep naming in your feed consistent with naming in your own materials and signage.
- Local language: Use the same local language that is used predominantly by your riders.
- Standard name formatting: Avoid abnormal characters and spacing; for example, "#Regent's Avenue %204 - City Center" should be "204 Regent's Avenue - City Center."
- Avoid abbreviations: Avoid abbreviations unless they are very commonly used; for example, it's okay to use NYC and LA, but you should avoid using LN for London.
- Sentence case capitalization: Use sentence case capitalization. ALL UPPER CASE or all lower case is acceptable and will be automatically converted into sentence case. However, MIXED casing isn’t acceptable and should be fixed so that it is displayed properly to users.
Best practices for feed publishing
Follow these best practices to make sure data can be reliably fetched from your feeds:
- Specified fetch location: Let your IT or networking teams know that Google periodically fetches data from a specified location to your transit feed. This way, they can avoid changing file permissions for the feed or otherwise blocking or breaking the data fetching process.
- Fetch URL: Use a fetch URL to submit your feed, instead of manually uploading your feed into the Transit partner dashboard.
- Scheduled fetch: To keep the data in your feed up to date, configure a scheduled fetch that runs at least once every week. You can set the schedule frequency or specific time on the Create new static pipeline page > Configuration > Schedule.
- Expired feed: Don’t disable the scheduled fetch because the feed is expired. Update the feed instead.
- Feed notification: Don’t disable feed notifications in the Transit partner dashboard. Also, ensure that the contact email address is kept up to date.