Amtrak Status Maps Archive Database
Historical Amtrak on-time performance data
Frequently Asked Questions
- So what is this website about?
- OK, so you are a tech geek and like trains and data. What can I find on your website?
- How about sorting the results by the length of the delays?
- Can I search a particular station for all trains?
- What about searching for arrival delays?
- How about searching by Train number for all stations?
- I know the train I am searching for exists, why can't I find it?
- Why don't the Actual Arrival and Actual Departure columns include the MM/DD/YYYY in the results? They appear
in the Scheduled Arrival and Scheduled Departure columns.
- If I choose to sort by Scheduled Arrivals, how come there are no results or only a few results?
- How do I search for Service Disruptions or Cancellations?
- How does the Connecting Trains search work?
- I'd like to see a train's entire route and look for the average delays at each of its stations.
- Any tips for finding a catalog of trains that Amtrak operates?
- How reliable is your data?
- I found an error or I received some odd results, will you take a look?
- How often is your website updated with new data?
- How far back in time can I search your database? Why can't I search before that date?
- Will you add more functionality for different kinds of searches?
- What is the difference between a Service Disruption and a Cancellation?
- A note about the Arrival and Departure "Delays" reported on this website
- Notes about Amtrak "Specials"
So what is this website about?
I've always been interested in Amtrak and train travel in general. In recent years I have been riding Amtrak as much as I can. On the
Amtrak Unlimited Discussion Forum I discovered the very useful website statusmaps.com
which keeps track of all Amtrak trains and their on-time performance. It has a wealth of data and it has been dutifully maintained and supported by a very dedicated
individual, Mr. John Bobinyec.
From time to time I will check the archived train status files to see how well (or poorly) a particular train has been running in relation to its published
timetable. For example, has Train 19 (the Crescent) been arriving into Atlanta close to on-time for the past week? Craving more data, I wanted to search
for train status by specific dates and stations, and sort the results by their on time performance without having to check individual train status files. A relational
database is the best way to do this type of query, and John was kind enough to help me in this endeavor.
I also work in the IT industry as my full-time job and I wanted to gain experience working with PHP and SQL, so this project came to mind. It has been nicknamed "ASMAD".
OK, so you are a tech geek and like trains and data. What can I find on your website?
Great question! There are three main pages to the site for making queries, and they are the following:
a) Searching train status history by Train Number or Station
b) Searching full status maps history files for trains that experienced (or did not experience) Service Disruptions or Cancellations
c) Searching history of connecting trains
For example, say you live in Providence, RI (Amtrak station code PVD) and you wanted to see how well Train 67 has been running over the past week. Has it been
departing PVD close to on-time? You can find it by entering a query like this on the Train Number/Station search page:
Notice I have entered the Train number (67), Station code (PVD), Start date 8/10/2014 and End date 8/16/2014. I have chosen to sort the results
by Scheduled Departure (DP), in Descending order (which will show the latest date at the top of the results). You can see the train
departed late most days but had an on time departure August 16th.
How about sorting the results by the length of the delays?
This is another useful query on the Train Number/Station search page, especially when you want to examine trains and their
historical performance over longer periods of time. In the example below, you can see I am sorting by Departure Delays in Descending order. This puts
the largest delays at the top of the results.
Can I search a particular station for all trains?
Yes, use the Train Number/Station search page but note the search results will take longer to appear if you have a
wide range of dates.
Below is an example for just a 1-day search which returns the results quickly. I am looking at Harrisburg, PA (HAR) to see
all trains that day, and I am sorting the results by Departure Delays. You can see Train 672 was the most delayed (only by 2 minutes).
What about searching for arrival delays?
You can search for this data from the Train Number/Station search page as well, but note that Arrival information
is far less frequently available compared to Departure information. This is due to the Amtrak source data limitations. Arrival information
is typically available for the last station of a train's route, and occasionally at a few intermediate stops. Below shows Arrival Delays
for trains at HAR.
You can also restrict the delays you want to see, such as this example where I have chosen to show only delays greater than 45 minutes.
How about searching by Train number for all stations?
This query is most likely used just for browing the database - for example, how late was Train 19 for any station on its route last week? Below is a
search that will tell you the answer. Note the results are sorted by Departure Delays. Again, searching for a wide range of dates in this type of search will
take longer to execute. In this case I have limited the results to just 10 entries.
I know the train I am searching for exists, why can't I find it?
Some trains are "subsets" of their primary trains. For example, train 449 is the Boston section of the Lake Shore Limited train #49. So even though
449 technically goes to Chicago, 49 is the primary train number and you would search that number for the train arriving at Chicago. Other trains
are not tracked at all, including the ones listed at Amtrak Status Maps Alerts page.
Why don't the Actual Arrival and Actual Departure columns include the MM/DD/YYYY in the results? They appear in the Scheduled Arrival and Scheduled
The source data doesn't allow for the Month/Day/Year to be easily stored for Actual Arrival and Actual Departure times. Amtrak doesn't always provide it as seen
in the image below, or it could be a bit inaccurate. One could calculate the Month/Day/Year but it can get complicated with very late trains spanning
calendar days and having to subtract the number of minutes the train has been delayed which appears in Amtrak's website regarding the Train Status.
If I choose to sort by Scheduled Arrivals, how come there are no results or only a few results?
This is caused by a limitation of the source data - simply put, the data doesn't exist for all trains at all stations. Try searching for Departure
How do I search for Service Disruptions or Cancellations?
Use the Service Disruptions/Cancellations search page. In the example below I am looking for the history of Train 7 from
1/4/2014 to 1/16/2014. Note that a few Service Disruptions for this train are noted in the appropriate column.
In this example, I am searching all Amtrak trains from 9/24/2014 to 9/26/2014 which experienced Cancellations.
How does the Connecting Trains search work?
For this search you'll need to know the arriving train and connecting train at a particular station. In this example I chose Train 8 (eastbound Empire Builder)
connecting to Train 48 (eastbound Lakeshore Limited) departing from Chicago. You can see that on 4/10/2014 and 4/2/2014 Train 8 arrived too late to
connect with Train 48.
I'd like to see a train's entire route and look for the average delays at each of its stations.
The Average Delays by Train Number lets you see historical average or median delays for each
of the stations along its route. In most cases you can see Amtrak's "recovery time" where the train is not as late at the final
station as it was servicing previous stations. The output table below the chart summarizes the specific data.
Any tips for finding a catalog of trains that Amtrak operates?
The Amtrak System Timetables and the Museum of Railway
Timetables are helpful references.
How reliable is your data?
The data is taken directly from Amtrak. Like any large data-collection projects, it may not be 100% perfect.
I found an error or I received some odd results, will you take a look?
Yes, just contact me using the information on the About this website page.
How often is your website updated with new data?
This website updates once every 24 hours in the early morning. It gathers train data from the previous day, and any updates or corrections from recent
previous days if they are available. The dataflow may be unexpectedly interrupted and could require my attention. My goal is to keep the website
updated and repair any errors.
How far back in time can I search your database? Why can't I search before that date?
Data for a very limited number of trains (79, 80, 91, 92) begins on July 4, 2006. The source data is not available before this date.
Will you add more functionality for different kinds of searches?
I can certainly consider it. Contact me using the information on the About this website page.
What is the difference between a Service Disruption and a Cancellation?
(This explanation taken from the Amtrak Status Maps FAQ.) The essential
difference is timing. If Amtrak determines that there will be some happenstance which will prevent a train from
running, they can decide to cancel it, or a part of it. They do this in the reservations system. The train simply doesn't run
over the portion of the trip which was canceled. A Service Disruption usually occurs unexpectedly and on very short notice
and in some cases after the train has started its journey. In this case Amtrak will designate the train as having suffered
a "Service Disruption" in the reservations system.
A note about the Arrival and Departure "Delays" reported on this website
I use the term "Arrival Delay" or "Departure Delay" because the people who track Amtrak performance data know what I am
referring to (how late a train arrived at or departed from a particular station). But Amtrak uses the term "Arrival Lateness" or
"Departure Lateness". Amtrak considers a "delay" the incremental tardiness that a train experiences enroute. For example, a delay
could be caused by a longer than normal station dwell, slow running time on a section of track due to various issues, etc. The sum
of all delays equals lateness.
Notes about Amtrak "Specials"
Amtrak occasionally runs special non-public trains. Some are reported and tracked on Amtrak.com and some are not. Even if the train is not
tracked on Amtrak's website, media reports and other railroad enthusiast websites often have data about the train's route and
its stopping points. In cases where enough data exists to reconstruct a status file, the work has been done and the data
entered into this database. Otherwise the specials do not appear.
The "Safety Patrol Specials" are chartered trains that usually run in January or February. Because they are closed to the
traveling public their schedules are unique (but not their train numbers) so they appear in the database under unique ASMAD
train numbers. Train numbers 92, 97, and 98 for these special trains have been changed to
respectively. This has been done so their statistics do not skew the public trains that run under the same train numbers.
Other special trains
Southwest Chief specials (991 on July 11, 2014 and
993 on July 12, 2014)
Wichita track inspection special (952 on June 9, 2017)
Holiday and other public special trains are listed at Amtrak Timetable Archives near the bottom.