ASMAD
Historical Amtrak on-time performance data

Frequently Asked Questions

  1. So what is this website about?
  2. OK, so you are a tech geek and like trains and data. What can I find on your website?
  3. How about sorting the results by the length of the delays?
  4. Can I search a particular station for all trains?
  5. What about searching for arrival delays?
  6. How about searching by Train number for all stations?
  7. I know the train I am searching for exists, why can't I find it?
  8. 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.
  9. If I choose to sort by Scheduled Arrivals, how come there are no results or only a few results?
  10. How do I search for Service Disruptions or Cancellations?
  11. How does the Connecting Trains search work?
  12. I'd like to see a train's entire route and look for the average delays at each of its stations.
  13. Any tips for finding a catalog of trains that Amtrak operates?
  14. How reliable is your data?
  15. I found an error or I received some odd results, will you take a look?
  16. How often is your website updated with new data?
  17. How far back in time can I search your database? Why can't I search before that date?
  18. Will you add more functionality for different kinds of searches?
  19. What is the difference between a Service Disruption and a Cancellation?
  20. A note about the Arrival and Departure "Delays" reported on this website
  1. 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".


  2. 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:

    screenshot image of ASMAD

    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.


  3. 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.

    screenshot image of ASMAD


  4. 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).

    screenshot image of ASMAD


  5. 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.

    screenshot image of ASMAD

    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.

    screenshot image of ASMAD


  6. 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.

    screenshot image of ASMAD


  7. 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.


  8. 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.

    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.

    screenshot image of ASMAD


  9. 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 data instead.


  10. 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.

    screenshot image of ASMAD

    In this example, I am searching all Amtrak trains from 9/24/2014 to 9/26/2014 which experienced Cancellations.

    screenshot image of ASMAD


  11. 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.

    screenshot image of ASMAD


  12. 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.

    screenshot image of ASMAD


  13. Any tips for finding a catalog of trains that Amtrak operates?

    The Amtrak System Timetables and the Museum of Railway Timetables are helpful references.


  14. How reliable is your data?

    The data is taken directly from Amtrak. Like any large data-collection projects, it may not be 100% perfect.


  15. 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.


  16. 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.


  17. 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.


  18. 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.


  19. 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.


  20. 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.