Create your data feed

GTFS quality requirements and best practices

To create the best possible user experience, ensure that your General Transit Feed Specification (GTFS) feed is compliant with Google’s quality requirements before it’s launched to the general public.

A comprehensive set of GTFS best practices can be found at These practices provide valuable guidance on the correct formation of GTFS data.

The following general rules apply to all user-facing content, 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.

Data fetches

Observe the following best practices to ensure Google is able to easily and accurately fetch your feed data:

  • Specified fetch location: Let your IT/networking teams know that Google periodically fetches your agency's transit feed data from a specified location. This way, they can avoid changing file permissions for the feed or otherwise blocking or breaking the data fetching process.

  • Fetch URL: Configure a fetch URL  instead of using the upload feature in the Transit Partner Dashboard.

  • Scheduled fetch: Configure a scheduled fetch that runs at least once every week, in order to keep your feed data up to date. Check "Transfer only new or updated file(s)" to prevent unnecessary fetches.

  • 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.
Was this helpful?
How can we improve it?

Is there something we can help you with?

Chat with a member of Transit team

Clear search
Close search
Google apps
Main menu
Search Help Center