[{"data":1,"prerenderedAt":346},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fwebsite\u002Fexport-geojson-and-csv":3,"_apollo:default":345,"_apollo:stationEditor":345,"_apollo:feedManagement":345,"_apollo:transferAnalyst":345},{"id":4,"title":5,"body":6,"description":336,"extension":337,"meta":338,"navigation":339,"path":340,"seo":341,"stem":342,"__hash__":343,"lastUpdated":344},"content\u002Fdocs\u002Fwebsite\u002Fexport-geojson-and-csv.md","Export GeoJSON and CSV",{"type":7,"value":8,"toc":327},"minimark",[9,24,33,38,96,107,111,117,124,128,176,189,192,282,288,292,295,315,319],[10,11,12,13,17,18,23],"p",{},"The ",[14,15,16],"strong",{},"Export GeoJSON"," button saves routes and stops from a Transitland data page as GeoJSON, for GIS and mapping tools, or as CSV, for spreadsheets and data-science tools. It is available to accounts on Transitland+ and Hobbyist\u002FAcademic ",[19,20,22],"a",{"href":21},"\u002Fplans-pricing","plans",".",[25,26,27,28,32],"info",{},"\n  To download stops and routes across entire countries, see ",[19,29,31],{"href":30},"\u002Fdocumentation\u002Fdatasets","Transitland Datasets",".\n",[34,35,37],"h2",{"id":36},"where-it-appears","Where it appears",[39,40,41,54],"table",{},[42,43,44],"thead",{},[45,46,47,51],"tr",{},[48,49,50],"th",{},"Page",[48,52,53],{},"Exports",[55,56,57,69,77,85],"tbody",{},[45,58,59,66],{},[60,61,62],"td",{},[19,63,65],{"href":64},"\u002Fdocumentation\u002Fconcepts\u002Fstatic-gtfs-feed-versions","Feed version",[60,67,68],{},"All routes and stops in the version",[45,70,71,74],{},[60,72,73],{},"Agency",[60,75,76],{},"The agency's routes, and the stops they serve",[45,78,79,82],{},[60,80,81],{},"Route",[60,83,84],{},"The route, and the stops its trips serve",[45,86,87,93],{},[60,88,89],{},[19,90,92],{"href":91},"\u002Fdocumentation\u002Fconcepts\u002Fagencies-and-operators","Operator",[60,94,95],{},"The operator's routes, and the stops they serve, from the active version of each of its feeds",[97,98,101,102],"div",{"className":99},[100],"screenshot","\n  ",[103,104],"img",{"src":105,"alt":106},"\u002Fimages\u002Fdocumentation\u002Fwebsite\u002Fexport-menu-feed-version.png","Export GeoJSON menu open on a feed version page",[34,108,110],{"id":109},"options","Options",[10,112,113,114,116],{},"Clicking ",[14,115,16],{}," exports routes and stops together as GeoJSON. Its menu offers routes or stops alone, as GeoJSON or CSV.",[97,118,101,120],{"className":119},[100],[103,121],{"src":122,"alt":123},"\u002Fimages\u002Fdocumentation\u002Fwebsite\u002Fexport-menu-route.png","Export GeoJSON menu open on a route page",[34,125,127],{"id":126},"file-contents","File contents",[10,129,130,133,134,138,139,143,144,147,148,151,152,155,156,159,160,163,164,167,168,171,172,175],{},[14,131,132],{},"GeoJSON"," files are a single ",[135,136,137],"code",{},"FeatureCollection",". Route features come first, with the ",[19,140,142],{"href":141},"\u002Fdocumentation\u002Fconcepts\u002Froutes#route-geometries","route geometry"," as a ",[135,145,146],{},"LineString"," or ",[135,149,150],{},"MultiLineString",". Stop features follow, as ",[135,153,154],{},"Point"," geometries. Feature IDs are prefixed by type (",[135,157,158],{},"route-…",", ",[135,161,162],{},"stop-…","). A route with a valid ",[135,165,166],{},"route_color"," also has a ",[135,169,170],{},"stroke"," property. A route without a geometry has a ",[135,173,174],{},"null"," geometry.",[10,177,178,181,182,185,186,23],{},[14,179,180],{},"CSV"," files hold one part each, encoded as UTF-8 with a byte order mark. Route rows have no geometry. Stop rows have ",[135,183,184],{},"stop_lat"," and ",[135,187,188],{},"stop_lon",[10,190,191],{},"Both formats carry these properties:",[39,193,194,204],{},[42,195,196],{},[45,197,198,201],{},[48,199,200],{},"Part",[48,202,203],{},"Properties",[55,205,206,248],{},[45,207,208,211],{},[60,209,210],{},"Routes",[60,212,213,159,216,159,219,159,222,159,225,159,231,159,234,159,236,159,239,159,242,159,245],{},[135,214,215],{},"onestop_id",[135,217,218],{},"route_id",[135,220,221],{},"route_short_name",[135,223,224],{},"route_long_name",[19,226,228],{"href":227},"\u002Fdocumentation\u002Fconcepts\u002Froutes#route-vehicle-types",[135,229,230],{},"route_type",[135,232,233],{},"route_url",[135,235,166],{},[135,237,238],{},"agency_id",[135,240,241],{},"agency_name",[135,243,244],{},"feed_onestop_id",[135,246,247],{},"feed_version_sha1",[45,249,250,253],{},[60,251,252],{},"Stops",[60,254,255,159,257,159,260,159,263,159,266,159,272,159,275,159,278,159,280],{},[135,256,215],{},[135,258,259],{},"stop_id",[135,261,262],{},"stop_name",[135,264,265],{},"stop_code",[19,267,269],{"href":268},"\u002Fdocumentation\u002Fconcepts\u002Fstops#stop-location-types",[135,270,271],{},"location_type",[135,273,274],{},"parent_station",[135,276,277],{},"wheelchair_boarding",[135,279,244],{},[135,281,247],{},[10,283,284,285,287],{},"An operator imported from more than one feed has rows from each. Filter on ",[135,286,244],{}," to keep one.",[34,289,291],{"id":290},"limits","Limits",[10,293,294],{},"An export holds at most 100,000 routes and 100,000 stops. On a feed version page, options over the limit are not run. On other pages, the file stops at 100,000 and a notice says so.",[10,296,297,298,185,302,306,307,185,311,23],{},"For larger sets, download the feed version, or page through the REST API ",[19,299,301],{"href":300},"\u002Fdocumentation\u002Frest-api\u002Froutes","routes",[19,303,305],{"href":304},"\u002Fdocumentation\u002Frest-api\u002Fstops","stops"," endpoints, which also return GeoJSON. See ",[19,308,310],{"href":309},"\u002Fdocumentation\u002Frest-api#response-formats","response formats",[19,312,314],{"href":313},"\u002Fdocumentation\u002Frest-api#pagination","pagination",[34,316,318],{"id":317},"licenses","Licenses",[10,320,321,322,326],{},"For GeoJSON and CSV exported via the Transitland Website, help us to honor our upstream data providers by following the ",[19,323,325],{"href":324},"\u002Fterms\u002F","Transitland Terms",". Attribution is required in any public use of data exports from the Transitland Website.",{"title":328,"searchDepth":329,"depth":329,"links":330},"",2,[331,332,333,334,335],{"id":36,"depth":329,"text":37},{"id":109,"depth":329,"text":110},{"id":126,"depth":329,"text":127},{"id":290,"depth":329,"text":291},{"id":317,"depth":329,"text":318},"Export routes and stops from Transitland data pages as GeoJSON or CSV files for GIS, spreadsheet, and data-science tools.","md",{},true,"\u002Fdocs\u002Fwebsite\u002Fexport-geojson-and-csv",{"title":5,"description":336},"docs\u002Fwebsite\u002Fexport-geojson-and-csv","9fylU5hg6AF_I1OmPUrLVt2B0gGDIwQD5CVSWLJK8g4","2026-11-02T16:09:19-08:00","{}",1793664651468]