BTS Flight On-Time Performance — US Airline Delays avatar

BTS Flight On-Time Performance — US Airline Delays

Pricing

from $3.00 / 1,000 results

Go to Apify Store
BTS Flight On-Time Performance — US Airline Delays

BTS Flight On-Time Performance — US Airline Delays

Extract BTS monthly carrier on-time flight performance. 600K+ records/month with delays, cancellations, diversions, distances, and delay attribution. For travel analytics, route planning, delay-prediction ML, trip insurance pricing, and frequent-flyer apps.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Compute Edge

Compute Edge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

BTS Flight On-Time Performance Scraper

Overview

This Actor downloads and parses the Bureau of Transportation Statistics (BTS) On-Time Reporting Carrier flight performance dataset — the official US government source for airline delay, cancellation, and performance data. Access monthly flight data for all US domestic carriers with powerful filtering options.

Key Features:

  • Free, no authentication required — Download directly from official BTS servers
  • Monthly datasets — Full coverage from 1987 to present
  • 600K+ flights per month — Complete US domestic flight records
  • Rich filtering — By airline, airport, state, route, delay, cancellation status
  • Computed fields — Delay categories, cancellation reasons, route keys for analysis
  • Auto-updated — BTS publishes new data monthly

Data fields: Flight date, airline, flight number, tail number, origin/destination airports and cities, departure/arrival times and delays, cancellation/diversion status, distance, computed delay reasons (carrier, weather, NAS, security, late aircraft), and more.

Use Cases

  • Airline Performance Analysis — Benchmark carriers by on-time performance, delay patterns, cancellation rates
  • Route Planning & Optimization — Identify problematic routes, seasonal delay trends
  • Travel Insurance Pricing — Historical delay data for risk modeling
  • ML/AI Training Datasets — Clean, normalized flight data for delay prediction models
  • Frequent Flyer Programs — Analyze airline reliability for loyalty decisions
  • Airport Operations — Understand origin/destination impact on delays
  • Research & Economics — Academic studies on transportation, supply chain disruption

Input Parameters

ParameterTypeDefaultDescription
yearInteger2024Year for data (2010–2025)
monthInteger12Month (1–12)
originAirportString(all)3-letter origin airport code (e.g., JFK, LAX, ORD)
destAirportString(all)3-letter destination airport code (e.g., MIA, SFO)
carrierString(all)Airline code (e.g., AA, DL, UA, WN, B6, AS)
cancelledOnlyBooleanfalseOnly return cancelled flights
divertedOnlyBooleanfalseOnly return diverted flights
delayedOnlyBooleanfalseOnly return flights with ≥15 min departure delay
originStateString(all)2-letter state code for origin (e.g., CA, NY, TX)
destStateString(all)2-letter state code for destination (e.g., FL, HI)
maxResultsInteger5000Max records to return (0 = unlimited; monthly datasets contain 600K+ rows)

Output Fields

Each record includes:

Flight Identifiers:

  • flightDate, year, month, dayOfMonth, dayOfWeek
  • carrier (airline code), flightNumber, tailNumber

Route Information:

  • origin, originCity, originState, originStateName
  • dest, destCity, destState, destStateName
  • routeKey (computed: origin-dest, e.g., JFK-LAX)
  • distance (miles)

Departure:

  • crsDepTime (scheduled), depTime (actual), depDelay (signed minutes)
  • depDelayMinutes (absolute minutes late; null if on-time or early)
  • depDel15 (boolean: delayed ≥15 minutes)
  • taxiOut, wheelsOff

Arrival:

  • crsArrTime (scheduled), arrTime (actual), arrDelay (signed minutes)
  • arrDelayMinutes, arrDel15 (boolean: delayed ≥15 minutes)
  • wheelsOn, taxiIn

Elapsed Time:

  • crsElapsedTime, actualElapsedTime, airTime (in minutes)

Cancellation & Diversions:

  • cancelled (boolean)
  • cancellationCode (A=Carrier, B=Weather, C=NAS, D=Security)
  • cancellationReason (mapped: "Carrier", "Weather", "NAS", "Security")
  • diverted (boolean)

Delay Breakdown (sum to total departure delay):

  • carrierDelay (minutes — airline operational issue)
  • weatherDelay (minutes — weather at origin/destination)
  • nasDelay (minutes — NAS congestion)
  • securityDelay (minutes — security issue)
  • lateAircraftDelay (minutes — previous flight delay)

Computed Fields:

  • delayCategory (one of: on-time, delayed-minor [15–60 min], delayed-major [>60 min], cancelled, diverted)

Tutorial: Analyze JFK→LAX Delays

  1. Open the Actor Input Form in Apify Console
  2. Configure inputs:
    • year: 2024
    • month: 12
    • originAirport: JFK
    • destAirport: LAX
    • maxResults: 500
  3. Click Run
  4. Wait for completion (30–90 seconds depending on filters; larger datasets take longer)
  5. View Results:
    • Open the Dataset tab
    • Analyze depDelayMinutes, arrDelayMinutes, delayCategory
    • Sort by delay to identify worst-performing flights
    • Filter by carrier to compare airlines on this route

Example insights:

  • "JFK→LAX has avg departure delay of 12 minutes in December"
  • "Southwest (WN) had 3 cancellations, United (UA) had 0"
  • "Afternoon flights (14:00–18:00) show 18% more delays than morning"

Tutorial: Find Airlines with Most Cancellations

  1. Inputs:
    • year: 2024
    • month: 12
    • cancelledOnly: true
    • maxResults: 0 (unlimited)
  2. Run → captures all cancellations for December 2024
  3. Export as CSV/JSON
  4. Analyze in spreadsheet or Python:
    df = read_csv('dataset.csv')
    cancellations_by_carrier = df.groupby('carrier').size().sort_values(ascending=False)
    print(cancellations_by_carrier)

Data Schema & Completeness

Source: Official Bureau of Transportation Statistics (BTS), U.S. Department of Transportation

Coverage: All US-based carriers operating domestic flights

Data freshness: BTS publishes preliminary data within 1–2 days of month end; final data within 2–3 weeks. This Actor downloads the latest available dataset for the requested month/year.

Completeness: Fields are populated per BTS schema. Delays and cancellation reasons may be null if the flight was:

  • Cancelled before departure (no delay values)
  • Diverted (alternate dataset)
  • Early arrival (negative depDelay)

Note on large datasets: December and summer months (June–August) have 600K+ rows. Use filters (originAirport, carrier, delayedOnly, maxResults) to keep compute costs manageable.

Common Filters & Examples

Use CaseInput Config
All Southwest flights in April 2025carrier: "WN", year: 2025, month: 4
Cancelled flights in CaliforniaoriginState: "CA", cancelledOnly: true
JFK departures in Dec 2024, first 100originAirport: "JFK", maxResults: 100
Morning flights (05:00–12:00)No built-in filter; post-process crsDepTime
Major delays on top 10 routesdelayedOnly: true, maxResults: 50000 → group by routeKey

Pricing

  • Per-result: $0.003/record
  • Compute units: 1 run ≈ 0.5–2 compute units depending on dataset size and filters
  • Example: 5,000 records = ~$0.015 + 0.5 compute units ($0.025) = ~$0.04 total
  • Full monthly dataset (600K rows, no filters) ≈ $1.80 results + ~$1–2 compute = $4–5 total

Cost optimization:

  • Use maxResults to limit output
  • Filter by carrier or originAirport to reduce processing
  • Export monthly, not weekly

Troubleshooting

Q: "Failed to download BTS data" error

  • Check that year is 2010–2025 and month is 1–12
  • Older data (pre-2010) is not available via this URL pattern
  • BTS may delay monthly publishing by 1–2 weeks; try the prior month

Q: Got 0 results with filters applied

  • Your filter combination may have no matches (e.g., carrier "FX" doesn't exist)
  • Check airport codes are valid 3-letter IATA codes
  • State codes must be 2-letter (e.g., "CA" not "California")

Q: Dataset very large, run timed out

  • Monthly datasets (600K+ rows) can take 2–5 minutes to parse
  • Use maxResults to cap output
  • Add delayedOnly: true or filter by carrier/originAirport

Q: Data doesn't match BTS website directly

  • This Actor downloads the raw "Reporting Carrier" dataset from BTS
  • BTS website may show aggregated or summarized data; raw CSVs are authoritative
  • Dates are in ISO format (YYYY-MM-DD); BTS website may display differently

Similar Actors

Open Data: BTS flight data is public domain. No authentication or payment to BTS is required.

Proper Attribution: When publishing analysis:

  • Cite "U.S. Department of Transportation, Bureau of Transportation Statistics"
  • Include: "Data source: BTS On-Time Reporting Carrier dataset"

Disclaimer: This Actor provides data as-is. Apify and the creator are not liable for inaccuracies or delays in BTS data publishing. For regulatory/legal decisions, refer to official BTS sources directly.

Terms: Use this Actor only for lawful purposes. Reselling BTS data without attribution violates open data principles. Proper attribution is requested but not legally required (BTS is public domain).

Support

  • Questions? Check this README or contact support via Apify
  • Data quality issues? Report directly to BTS — this Actor mirrors their official datasets
  • Actor bugs? File an issue or contact the developer

Last updated: May 2025
Version: 0.1