Freighter rotation
Where should one freighter fly this week: back and forth on one lane, around a triangle, or around the world?
Goods flow one way: much more cargo leaves Asia than goes back. A freighter shuttling between two airports flies its backhaul half empty but pays for both legs. Pick a rotation among six cargo regions and compare block hours, payload, cost and weekly contribution, with or without fifth-freedom rights. It builds on Cargo 101, chapter 09.
The airports and distances are real, and so are the aircraft figures and trade-lane tonnages cited in How it works. Every demand, rate and cost on this page is illustrative: made up, but shaped like real headhaul and backhaul lanes.
Loading the lanes…
1. Six regions, thirty lanes
Each region stands for one big cargo airport. A lane's demand is the cargo this airline could sell on it in an average week, at that lane's rate per kilo (illustrative). The thicker the line on the map, the more cargo the lane carries in both directions together.
Each lane, both ways
Tonnes a week this airline could sell, average week (illustrative)2. Build a rotation
The freighter leaves home, calls at each station in turn and comes back. It flies the rotation as many times a week as its hours allow, or fewer if fewer departures fly fuller and earn more. Every week the cargo is chosen by a small linear program: each leg carries its own lane's cargo, plus cargo that stays on board through one stop when the detour is short. Legs longer than the aircraft's range stop on the way for fuel.
Leg by leg
Per departure, average weekWeek by week
Weekly contribution over one simulated year3. Why triangles beat shuttles
Take one lane from home. The out-and-back flies the lane both ways. The triangle keeps the busy direction and, instead of flying the quiet one, goes on to a third station that has cargo of its own. It flies more hours per rotation, so fewer rotations a week, but much less of its capacity flies empty.
Capacity flown and cargo carried in a week
Width: block hours. Height: the aircraft's 100 tHow unbalanced the lane must be
4. What fifth freedom is worth
Every rotation from home, run with and without fifth-freedom rights over the same simulated year (precomputed with the same model). Without them, a leg between two foreign stations can only carry cargo that is staying on board to or from home.
Best rotation of each kind
The twelve best rotations
Click a rotation to open it in section 2.
How it works
Background
Passengers mostly fly return trips, but goods flow one way: much more cargo leaves Asia than goes back. A freighter that shuttles between two airports fills up in the busy direction (the headhaul) and flies the other one (the backhaul) half empty, yet pays for the whole aircraft both ways. One freighter picks a rotation among six cargo regions. For each one you see the block hours, the payload on every leg, the revenue, the cost per block hour and the weekly contribution (revenue minus operating cost, before the aircraft's ownership cost). A switch turns fifth-freedom rights on and off: without them, the freighter can't carry cargo between two foreign countries, so a triangle loses most of what makes it pay.
The regions and the aircraft
Six regions, each represented by one airport: East Asia (Hong Kong, HKG), Middle East (Dubai, DXB), Europe (Frankfurt, FRA), Africa (Nairobi, NBO), North America (Chicago O'Hare, ORD) and Latin America (Bogotá, BOG). Distances are great-circle distances between the airports' coordinates. The aircraft is a large twin-engine freighter in the class of the Boeing 777 Freighter, for which Boeing lists a maximum structural payload of 107 tonnes and a range of 9,260 km. The page assumes 100 tonnes of usable payload (a hold rarely fills to its structural limit, because pallets are contoured and cargo has a density) and a nonstop range of 9,260 km whatever the load. A leg longer than that stops for fuel at evenly spaced points on the way (in practice at airports such as Anchorage on the Pacific).
Block time for a leg of d km with s fuel stops is d / 820 + 0.5 (s + 1) hours: 820 km/h on average from takeoff to landing, plus half an hour of taxi, climb and approach for each flight segment. Each station call takes 4 hours on the ground, each fuel stop 1.5 hours. The aircraft has 151 hours a week to fly and turn, after maintenance. All of these are illustrative round numbers.
Demand and rates
For each of the 30 lanes, the data file (freighterrotation.json) gives the tonnes this airline could sell in an average week and the rate per kilo. Both are made up, but shaped like real lanes: East Asia to North America carries about twice as much as the reverse and at more than twice the rate; East Asia to Europe is less unbalanced in tonnes but still pays much more westbound; Africa and Latin America send flowers and perishables north; Europe exports machinery and pharma to the Gulf; Asia sends four times as much to Africa as it receives. For scale, Boeing's World Air Cargo Forecast 2022 counts 3.5 million tonnes flown from East Asia to North America in 2021 against 1.9 million the other way, 2.9 million from East Asia to Europe against 2.6 million back, and nearly four times as much air cargo from Asia into Africa as out of it.
One year of 52 weeks is drawn with a seeded generator (mulberry32, seed 2026), so the page always opens on the same year. Each week, a lane's demand is its average times a seasonal factor (Asian exports dip around Lunar New Year and peak from October to mid-December; flower lanes peak before Valentine's Day and Mother's Day), times a factor common to all lanes (lognormal, 6% spread) and a factor of its own (lognormal, 15% spread).
The cargo each leg carries
A rotation is a loop of stations starting and ending at home: an out-and-back has two stations, a triangle three, and a round-the-world loop four or more, every leg heading the same way round the globe. A shipment from o to d can fly on the leg between them, or stay on board through one intermediate station if the route is at most 30% longer than the direct one; such a shipment sells for 15% less than a nonstop, because it arrives later. Cargo never stays on board through home, where each rotation ends. Without fifth freedom, only shipments that start or end at home are allowed.
If the freighter flies the rotation f times a week, each departure can take a share 1/f of each lane's demand that week. The page then solves, for each week, the linear program
maximise Σk mk xk subject to Σk uses leg l xk ≤ 100 t on every leg l, and 0 ≤ xk ≤ Dk / f,
where xk is the tonnes of shipment type k carried per departure and mk its margin per tonne: the rate, minus handling at both ends, minus the extra fuel of carrying a tonne for the block hours it is on board. A shipment type with a negative margin is left behind. The LP is solved with a small simplex, checked against brute-force enumeration.
Cost and contribution
Operating cost per departure = block hours × (fuel + crew + maintenance per block hour) + landing and navigation charges per station call and per fuel stop + handling per tonne at both ends + the payload's extra fuel. Fuel is 6.8 tonnes an hour at US$750 a tonne, plus 0.012 tonnes per tonne of payload per hour; crew US$1,300 and maintenance US$2,400 per block hour; landing and navigation US$7,000 per call and US$4,500 per fuel stop; handling US$90 per tonne at each end (all illustrative). Cost per block hour is the week's operating cost divided by its block hours, so it rises with short legs and many stops. Weekly contribution = revenue − operating cost, averaged over the 52 weeks. It is what is left to pay for the aircraft itself, overheads and profit, which are the same whatever rotation the aircraft flies.
The weekly frequency is chosen by trying 100%, 90%, … down to 30% of the maximum the aircraft's hours allow and keeping the one with the highest contribution. On busy lanes that is the maximum; on thin ones, flying less often fills each departure better. Sections 1 to 3 run live in your browser. Section 4 runs every rotation from every home with and without fifth freedom (284 rotations, twice) and is precomputed by scripts/freighterrotation/precompute.js with the same code as this page, into freighterrotation-rotations.json.
The break-even chart in section 3 keeps every other lane as it is and multiplies both the tonnes and the rate of the chosen lane's quiet direction by the same factor, so that it earns (tonnes × rate) from 5% to 100% of what the busy direction earns.
Sources
- Boeing, Freighters: 777 Freighter maximum structural payload 107 tonnes, range 9,260 km (checked October 2026).
- Boeing, World Air Cargo Forecast 2022: 2021 tonnages by direction between East Asia and North America and between East Asia and Europe, and the imbalance between Asia and Africa (checked October 2026).
- ICAO, Freedoms of the Air, from the Manual on the Regulation of International Air Transport (Doc 9626). The fifth freedom is "the right or privilege, in respect of scheduled international air services, granted by one State to another State to put down and to take on, in the territory of the first State, traffic coming from or destined to a third State" (checked October 2026).
- Airport coordinates: public aeronautical data for HKG, DXB, FRA, NBO, ORD and BOG, rounded to three decimals.
- Map: world-atlas 2.0.2 (Natural Earth, 1:110m). Charts drawn with D3 7.9.0.
Limitations
- Payload is weight only. A real hold can fill by volume first (see the cargo revenue management page), and a freighter's range falls as its payload rises: a lightly loaded backhaul can often fly a leg nonstop that a full headhaul can't. Winds are ignored, although eastbound flights across the Pacific and the Atlantic are noticeably faster than westbound ones.
- Demand and rates are given. In reality, rates fall when an airline adds capacity on a lane, backhaul rates are partly set by how much empty space is flying back, and the space a single freighter can sell depends on what competitors and passenger bellies offer.
- One aircraft, one rotation, repeated. Real freighter networks mix rotations, schedule them in weekly patterns at fixed times, connect them at hubs, and fill gaps with trucks, partner airlines and belly space. Fractional frequencies here are averages, not a timetable.
- Traffic rights are all or nothing. Real air service agreements grant fifth-freedom rights point by point and sometimes cap them in frequencies; some grant cargo-only rights more freely, including the right to fly between two foreign countries without touching home (the seventh freedom), which is not modelled. Sixth-freedom cargo (between two foreign stations via home) is not carried either, because every rotation ends at home.
- Contribution excludes the aircraft's ownership, insurance and overheads. It ranks rotations for an aircraft the airline already has; it doesn't say whether the aircraft is worth having.
This is a personal project and isn't affiliated with any airline.