GTFS/Mapping to OSM tags
< GTFS
| As of 2017-04-08, this mapping has not gained consensus, and is for reference only. As of 2020-08-01, some tags are used by PTNA, but still only a reference or proposal. | 
Reference: https://developers.google.com/transit/gtfs/reference/
stops.txt
Reference: https://developers.google.com/transit/gtfs/reference#stopstxt
| GTFS key | value | Similar OSM key/value | remarks | 
|---|---|---|---|
| stop_id | ID | gtfs:id=*,gtfs_id=*,gtfs:stop_id=*, (stop_id=*+source:stop_id=gtfs) | In Europe ref:IFOPT=*is the preferred key if the ID is identical. | 
| stop_code | Text | gtfs_stop_code=*,ref=* | |
| stop_name | Text | name=* | gtfs:name=*can be used for the name in the data if it differs fromname=*. | 
| stop_desc | Text | description=* | |
| stop_lat | Latitude | Object position, not always accurate | |
| stop_lon | Longitude | Object position, not always accurate | |
| zone_id | ID | ||
| stop_url | URL | url=*,website=* | |
| location_type | 0 or empty | ( highway=bus_stop,railway=stop/railway=halt,railway=tram_stop) +public_transport=platform | Stop (or Platform): public_transport=stop_positionif it's on the line;station=subway/subway=yes/station=light_rail/ferry=yesif applicable | 
| 1 | ( amenity=bus_station,railway=station) +public_transport=station, | Station: group child stations with public_transport=stop_area | |
| 2 | Entrance/Exit | ||
| 3 | Generic Node | ||
| 4 | Boarding Area | ||
| parent_station | ID | public_transport=stop_area | Parent object, for location_type=5the platform | 
| stop_timezone | Timezone | ||
| wheelchair_boarding | 0 or empty | Use value from parent | If no parent exists: No info available | 
| 1 | wheelchair=yes | ||
| 2 | wheelchair=no | ||
| level_id | ID | ||
| platform_code | Text | local_ref=* | 
routes.txt
Reference: https://developers.google.com/transit/gtfs/reference/routestxt
| GTFS key | value | Similar OSM key/value | remarks | 
|---|---|---|---|
| route_id | ID | gtfs:route_id=* | PTv2 routes need one of gtfs:shape_id=*,gtfs:trip_id:sample=*orgtfs:trip_id=*butgtfs:route_id=*does not harm | 
| agency_id | ID | Useful to get the operator=*fromagency.txt | |
| route_short_name | Text | gtfs:name=* | name=*has a different syntax | 
| route_long_name | Text | gtfs:name=* | name=*has a different syntax | 
| route_desc | Text | description=* | |
| route_type | 0 | ( route=light_rail,route=tram) + (type=route,type=route_master) | |
| 1 | route=subway+ (type=route,type=route_master) | ||
| 2 | route=train+ (type=route,type=route_master) | ||
| 3 | ( route=bus,route=share_taxi) + (type=route,type=route_master) | There is no difference made between bus and share_taxi, so far. | |
| 4 | route=ferry | ||
| 5 | cable_tram=yes+route=tram+ (type=route,type=route_master) | ||
| 6 | route=aerialway,aerialway=* | ||
| 7 | route=funicular+ (type=route,type=route_master) | ||
| 11 | route=trolleybus+ (type=route,type=route_master) | ||
| 12 | route=monorail+ (type=route,type=route_master) | ||
| route_url | URL | url=*,website=* | |
| route_color | Color | colour=* | |
| route_text_color | Color | ||
| route_sort_order | 0-∞ | ||
| continuous_pickup | 0 | Yes ; Role for the member ways | |
| 1 or empty | No | ||
| 2 | reservation=required+phone=* | Yes, by phone call in advance. | |
| 3 | Yes, by talking to the driver | ||
| continuous_drop_off | 0 | Yes ; Role for the member ways | |
| 1 or empty | No | ||
| 2 | reservation=required+phone=* | Yes, by phone call in advance. | |
| 3 | Yes, by talking to the driver | 
trips.txt
Reference: https://developers.google.com/transit/gtfs/reference/tripstxt
| GTFS key | value | Similar OSM key/value | remarks | 
|---|---|---|---|
| route_id | ID | gtfs:route_id=* | Not needed for PTv2 routes but does not harm. | 
| service_id | ID | ||
| trip_id | ID | ( gtfs:trip_id:sample=*,gtfs:trip_id=*) +type=route+public_transport:version=2 | Use gtfs:shape_id=*if possible. Usegtfs:trip_id=*only for a route relation with a single trip and only oneservice_id. | 
| trip_headsign | Text | destination=* | Sometimes direction=*is used but that does neither fit to the key nor to the definition of this field. | 
| trip_short_name | Text | gtfs:name=* | |
| direction_id | Boolean | Different travel directions | |
| block_id | ID | ||
| shape_id | ID | gtfs:shape_id=*+type=route+public_transport:version=2 | The preferred ID for a PTv2 routes as it directly corresponds to the tagging system. | 
| wheelchair_accessible | 0 or empty | No info available | |
| 1 | wheelchair=yes | ||
| 2 | wheelchair=no | ||
| bikes_allowed | 0 or empty | No info available | |
| 1 | bicycle=yes | ||
| 2 | bicycle=no |