If you want to measure how much capacity an airline is flying, the instinct is to reach for ASMs — available seat-miles, seats multiplied by distance. It’s the industry’s standard yardstick. There’s just one problem when your source is an SSIM file: the file doesn’t know how far anything flies. This post is about what you can honestly compute from a schedule alone, and where you have to stop and admit you’re using a proxy.
What SSIM gives you, and what it withholds
An SSIM file is a schedule, not an atlas. From it you can read, per flight leg:
- the seats, derived from the aircraft configuration (the equipment and its cabin layout — SSIM doesn’t state a seat count directly, it states a configuration you resolve to one);
- the frequency — how often the leg operates, once you expand its period and days-of-operation into concrete dates;
- the block time, from the scheduled departure and arrival, adjusted for the time-mode and UTC-variation fields so an overnight or cross-zone leg comes out right.
What it does not give you is distance. SSIM carries no stage lengths and no airport coordinates. The board and off points are three-letter codes; how far apart SYD and MEL sit is simply not in the file. That single absence is why you can’t compute a true ASM from a schedule on its own.
Seats: yes. Frequency: yes. Block time: yes. Miles: no. The schedule tells you how much and how often — never how far.
What you can measure
The absence of distance doesn’t leave you empty-handed. It leaves you with two honest capacity measures, both of which you can compute from the file alone.
Seat-departures — seats × frequency. Multiply the seats on a leg by the number of times it operates over your window. Sum across a market, a carrier, or a whole feed and you have the total seats offered. It answers “how much lift is on sale here,” and it’s exact — no external data, no estimation. It’s the cleanest capacity number a schedule can produce.
Seat-hours — seats × block time. Multiply seats by the block hours each departure flies, and sum. This is the distance-free stand-in for ASMs. Where an ASM weights each seat by the miles it’s carried, seat-hours weights each seat by the time it’s carried. Both reward long, full flights over short, empty ones; both let you compare the capacity of a widebody long-haul against a regional shuttle on a common scale.
| Measure | Formula | Needs external data? |
|---|---|---|
| Seat-departures | seats × frequency | No |
| Seat-hours | seats × block time | No |
| True ASMs | seats × distance × frequency | Yes — airport geography |
Why seat-hours is a proxy, not a truth
Be precise about what seat-hours is and isn’t. It is a genuinely useful capacity metric, directly comparable across your own dataset. It is not ASMs, and the two can rank things differently.
Time and distance aren’t the same thing. A flight held on the ground, a longer taxi, a routing that trades miles for minutes, headwinds baked into a conservative block — all of these move block time without moving distance, and vice versa. Two legs covering the same miles can post different block times; two legs with the same block can cover different miles. Seat-hours faithfully measures the first quantity and only approximates the second.
So the honest framing is: seat-hours is an ASM proxy that needs no geography. Use it when you want a distance-weighted-ish view of capacity straight from the schedule, and label it as a proxy so nobody downstream mistakes it for the real thing.
When you actually need miles
If you need true stage lengths — for real ASMs, for a fuel or cost model, for anything where the miles have to be right — you have to bring the geography yourself. That means a reference table of airport coordinates and a great-circle distance computed from the board and off points. The schedule supplies the city pair and the seats; your reference geography supplies the distance; together they make an ASM. The schedule alone never will.
This is the same “bring your own reference data” pattern that shows up whenever you want to put a schedule on a map: SSIM identifies the places, you supply where they are.
Why this matters in a tight market
In a year of full planes and thin margins, being able to read capacity straight from the schedule — before any enrichment, before any external join — is worth a lot. Seat-departures and seat-hours tell you where a carrier is concentrating lift, how a market’s capacity moves across a season, which routes are being thickened and which are being trimmed, all from the file you already have. The key is knowing the ceiling of each measure so you report it correctly instead of quietly overstating precision you don’t have.
Where SSIM Toolkit fits
SSIM Toolkit’s capacity and frequency analysis takes this distance-free approach on purpose. It computes seat-departures and seat-hours directly from the schedule — seats from the aircraft configuration, frequency from the expanded operating dates, block time from the times and the UTC-variation field — so the numbers are exact and reproducible from the file alone, with no hidden external join. Where a true, distance-weighted view is needed, that’s the job of the reference geography behind the route map — kept honestly separate from what the schedule itself can prove. It all runs locally, on your machine.
Capacity you can compute from the file; ASMs you have to earn with geography. Knowing which is which is the whole discipline. More on the Toolkit at /product/ssim-toolkit.
Want early access?
We're opening SSIM Toolkit to teams in waves through 2026 — free during the preview. Drop your email and we'll reach out when it's your turn.
You're on the list. Check your inbox for a confirmation email to finish signing up.
Something went wrong — please try again, or email hello@activeflights.com.
