How Do I Validate My GTFS Feed?
The easiest way is to drop your GTFS ZIP file into a tool like GTFS Guru. It'll scan your data and show you exactly what needs fixing.
Validating is like proofreading before you publish. It's much easier to fix an error now than to deal with it after your riders see it:
• Google will reject feeds that have even minor validation errors.
• Small typos can accidentally cancel hundreds of trips.
• It ensures your maps look clean and professional.
• It saves you hours of back-and-forth debugging with Google's support team.
How to Validate with GTFS Guru
Step 1: Go to gtfs.guru
Step 2: Drag and drop your GTFS ZIP file onto the validator (or click to browse)
Step 3: Wait a few seconds for validation to complete
Step 4: Review the results – fix any errors, address warnings
Your data never leaves your device. GTFS Guru runs entirely in your browser using WebAssembly technology.
What Gets Checked?
Required files: Are all mandatory files present?
Required fields: Does each file have all required columns?
Data types: Are numbers actually numbers? Dates in correct format?
References: Does every trip_id in stop_times.txt exist in trips.txt?
Coordinates: Are stop locations valid lat/lon values?
Times: Are arrival/departure times in HH:MM:SS format?
Logic: Do times progress forward? Are sequences continuous?
Errors (Must Fix): These are "blockers." Your feed won't work properly if these exist, and Google will definitely reject it.
Warnings (Should Fix): These are usually best practices. Your feed might still work, but fixing them makes the experience better for your riders.
Score: We give you a quality score to help you track your progress. Aim for zero errors and a high overall score!
Other Validation Options
GTFS Guru Desktop App: Download for Windows, Mac, or Linux to validate offline.
GTFS Guru CLI: Use in scripts and CI/CD pipelines with
cargo install gtfs-guru-cli
GTFS Guru Python: Integrate into Python code with pip install gtfs-guru
Canonical Validator: The official Java validator from MobilityData (slower, requires Java).
Google Transit Dashboard: Google validates when you submit, but it's better to catch errors beforehand.
Validation Best Practices
• Validate after every significant change
• Validate the complete ZIP, not individual files
• Fix errors before worrying about warnings
• Also test your feed in a trip planner to see how it displays
Related Questions
• Why was my GTFS feed rejected?
• How do I create a GTFS file?
• GTFS Validation Guide (full article)
Ready? Validate your GTFS feed now – it's free and instant.