Facebook
TwitterStop summary files represent average daily ridership at the stop level over the course of the relevant period. Trolley ridership data was generated using automatic passenger counters (APCs). Bus data is calculated from a variety of sources depending on the route and year. The bus data files represent average daily fall ridership from 2014 – present. Accurate weekend bus data was not available until 2017 at which point SEPTA had more widespread APC coverage. No bus data is available for Fall 2020 due to a malware attack. APC bus data was also not available for articulated vehicles and the Boulevard Direct from August 2020 through February 2022 due to the malware attack. Some data excludes 2020 and 2021 due to COVID
Facebook
TwitterGeographic data for SEPTA routes, stops, and locations is available from both APIs and GIS data.
Facebook
TwitterThe purpose of this dataset is to report inefficiencies in SEPTA's regional rail train scheduling for use by SEPTA employees and casual train riders. It also documents late trains, which you can use to excuse work lateness.
Facebook
TwitterThe SEPTA Real-time Map combines the results of several APIs, including bus, trolley and regional rail locations and alerts.
Facebook
TwitterProvides API access to SEPTA regional rail, bus, and trolley schedules.
Regional rail schedules are accessed by train number. Train numbers are in the GTFS files or the route stop API.
Example: https://www3.septa.org/api/RRSchedules/index.php?req1=458 returns rail schedule for the Aiport Line.
Bus and trolley schedules are accessed by stop ID.
Example: https://www3.septa.org/api/BusSchedules/index.php?stop_id=12345
returns scheduled stops for Ridge Av & Walnut Ln
Facebook
TwitterSEPTA Transit Stop locations for Summer 2024. Data downloaded from ArcGIS online hosted feature services Feb 2025.
Facebook
Twitterhttps://catalog.dvrpc.org/dvrpc_data_license.htmlhttps://catalog.dvrpc.org/dvrpc_data_license.html
DVRPC tracks transit ridership in the region through unlinked passenger trips, with data provided by each of the region's four transit operators—Southeastern Pennsylvania Transportation Authority (SEPTA), New Jersey Transit (NJ Transit), Port Authority Transit Corporation (PATCO), and Pottstown Area Rapid Transit (PART)—to the National Transit Database (NTD). Unlinked passenger trips count each passenger boarding, regardless of fare paid. Thus, a trip with a transfer would count as two boardings. Transit ridership does not include Amtrak, shuttles, or private bus passengers. It also does not include services that receive partial funding from SEPTA, like SCCOOT operated by the Transportation Management Association of Chester County.
One table shows the number of unlinked trips by mode—bus, trolley bus, light rail, heavy rail, commuter or regional rail, and non-scheduled services, which includes paratransit, demand response, and vanpools. All NJ Transit services are classified as being in the NJ Counties Subregion, because they mostly do not cross over to the Pennsylvania side of the region. The other table shows the number of unlinked trips by transit agency. The region's commuter rail services are mostly in the PA Suburban Counties Subregion. SEPTA is the only agency in the region with trolleybus services. SEPTA classified the Norristown High Speed Line (NHSL) as a subway, which travels through the PA Suburban Counties Subregion. SEPTA's subway services travel within the city of Philadelphia. Because of how these subway services cover multiple subregions, subways were simply classified as being in the DVRPC Region. Also, both tables contain: Total unlinked trips, unlinked trips per capita, unlinked trips per vehicle revenue hour (VRH), and unlinked trips per vehicle revenue mile (VRM). Vehicle revenue hours and miles count only when transit vehicles are operating along their scheduled routes. These figures do not account for ‘deadhead’ miles when not in passenger service, such as going to and from the depot on their way to or coming back from their scheduled route. Heavy rail and commuter rail services that operate with multiple passenger vehicles in one train count miles and hours for each vehicle individually. For example, a train with six passenger cars traveling one mile will count as six vehicle revenue miles.
NJ Transit's ridership figures are for the DVRPC region only. These figures are based on service in the Trenton and Philadelphia urbanized areas collected by the NTD. Prior to 2013, NJ Transit ridership, vehicle revenue hours, and vehicle revenue miles data was only provided at the statewide level. To calculate the region’s share of these NJ Transit figures, statewide totals from 1997 to 2012 were multiplied by the region’s percentage based on the 2013 to 2022 averages in each category. These averages were 12% of the state's total ridership, 14% of the vehicle revenue miles, and 12% of the vehicle revenue hours. PART ridership data is only available from 2005 onwards. PART vehicle revenue hour and mile data is only available from 2011 onwards. SEPTA trolley bus ridership data is not available from 2004 to 2007.
Facebook
TwitterTransitView provides real-time information about SEPTA buses and trolleys. TransitViewAll returns all current bus and trolley locations. TrnasitView accepts a route number and retuns locations for all vehicles on that route. Example: https://www3.septa.org/api/TransitView/index.php?route=33 returns all vehicles on bus route 33
Facebook
TwitterSEPTA schedule and location information in GTFS format. Please use GitHub (https://github.com/septadev/GTFS/) or Google group (https://groups.google.com/forum/#!forum/septadev)
Facebook
TwitterProvides access to current SEPTA bus detours via an API. All detours for all routes can be accessed at https://www3.septa.org/api/BusDetours/. To specify detours for a specific route, add the parameter: route number to the URL. Example: https://www3.septa.org/api/BusDetours/23
Facebook
TwitterSEPTA Transit Routes for Summer 2024. Data downloaded from ArcGIS online hosted feature services Feb 2025.
Facebook
TwitterVisual dashboards that describe ridership and performance metrics.
Facebook
TwitterTrip planner for finding SEPTA routes and times between an origin and destination.
Facebook
TwitterStop Summary files represent average daily ridership at the stop level over the course of a sign-up period. The data is calculated from a variety of sources depending on the route and year. This data provides a basic geographic overview of SEPTA’s ridership. These data files represent average daily ridership from Spring 2025.
Facebook
TwitterStop Summary files represent average daily ridership at the stop level over the course of a sign-up period. The data is calculated from a variety of sources depending on the route and year. This data provides a basic geographic overview of SEPTA’s ridership. These data files represent average daily fall ridership from 2014 – present. Accurate weekend data was not available until 2017 at which point SEPTA had more widespread APC coverage. No data is available from the Fall of 2020 due to the malware attack. APC data was not available for articulated vehicles and the Boulevard Direct from August 2020 through February 2022 due to the malware attack.
Facebook
TwitterSEPTA publishes real-time alerts, updates, and vehicle positions as GTFS-RT data feeds in protocol buffer (protobuf) format. A human-readable version is available from each end-point using /print.php but will only have the most recent 5 records.
Facebook
TwitterReturns a list of all elevator outages. The API does not require any paramters.
Facebook
TwitterSEPTA SMS Transit enables users to request scheduled trip information via text message. Users subscribe to the service via text. After setting up an account, users can receive schedule information by texting the Stop ID number for a bus, trolley, or subway stop to 41411. They will receive a return text with information on the four next scheduled trips from that stop. Users can include the specific route designation in the text to receive information on a certain route if the stop serves multiple routes. In addition to using the SMS, there is also a simulator which people can use to experiment at no cost. Finally, the SMS data can be accessed from an API. The data returned by the API is currently text format, separated. The API can be accessed in the format: https://www3.septa.org/sms/var1/var2/var3/var4/var5 [var1] = stop id [var2] = route id OR i/o for inbound/outbound [var3] = i/o for inbound/outbound only if route id is supplied [var4] = returns schedule times on or after specified date, format: MM/DD/YYYY. Defaults to current day. [var5] = returns schedule times on or after specified time, format: HH:mm:ss. Defaults to current time. Stops fall into one of three categories, here is an explanation with some sample links: Stops with service provided by only one route, stop is not the first or last stop andall travel is in a single direction: https://www3.septa.org/sms/321 Returns the next 4 scheduled trolleys (All Route 13) at Chester Ave & 49th St. Stops with service provided by multiple routes, but all travel is in one direction: https://www3.septa.org/sms/20645/ Returns the next 4 scheduled trolleys at 22nd St. Station. Note the results shows trolleys regardless or route. To grep just a single route, for a multi-route, uni-directional stop, add another var: https://www3.septa.org/sms/20645/13/ Returns only the Route 13 trolleys at 22nd St. Station Stops with travel in multi-directions. This is usually end points, like the trolley loop at Juniper and they may or may not have multiple routes. For example: https://www3.septa.org/sms/283 Returns the next 2 inbound and 2 outbound times for all routes https://www3.septa.org/sms/283/13/ Returns the next 2 inbound and 2 outbound times for only Route 13 https://www3.septa.org/sms/283/o Returns the next 4 outbound times for all routes https://www3.septa.org/sms/283/13/o Returns the next 4 outbound times for only Route 13
Facebook
TwitterProvides access to SEPTA travel alerts via an API. All travel alerts can be viewed at https://www3.septa.org/api/Alerts/. To retrieve travel alerts for a specific route or line, add the parameter: route/line name to the URL. Example: https://www3.septa.org/api/Alerts/index.php?routes=bus_route_33 The API endpoint at get_alert_data.php provides more verbose messages for either the whole system or a single route Example: https://www3.septa.org/api/Alerts/get_alert_data.php?route_id=bus_route_33
Facebook
TwitterStop summary files represent average daily ridership at the stop level over the course of the relevant period. Trolley ridership data was generated using automatic passenger counters (APCs). Bus data is calculated from a variety of sources depending on the route and year. The bus data files represent average daily fall ridership from 2014 – present. Accurate weekend bus data was not available until 2017 at which point SEPTA had more widespread APC coverage. No bus data is available for Fall 2020 due to a malware attack. APC bus data was also not available for articulated vehicles and the Boulevard Direct from August 2020 through February 2022 due to the malware attack. Some data excludes 2020 and 2021 due to COVID