
Executive Summary: A City Is Not a Price
The price-window engine produced a single run on 22 October 2026, generated at 16:06:34, covering sixty monitored route pairs on one measure: the current fare divided by that route's own mean. [source-1] Within that run, Shanghai is the cheapest origin in the network for one destination and the most expensive origin for another. PVG-TPE carries a ratio of 0.373, with a current fare of 80 dollars against a mean of 214.60. [source-1] PVG-CDG carries a ratio of 1.283, with a current fare of 1,033 dollars against a mean of 805. [source-1] The two numbers come from the same origin, the same engine, the same afternoon and the same arithmetic, and one of them is the lowest ratio in the network while the other is the eighth highest. [source-1]
The spread is not a Shanghai peculiarity. Shenzhen holds the cheapest ratio in its own five-route set at 0.668 and the most expensive Osaka ratio in the entire network at 1.989, a span of 2.98 times within one origin. [source-1] Beijing runs from 0.444 to 1.152, a span of 2.59. [source-1] Guangzhou runs from 0.592 to 1.224, a span of 2.07. [source-1]
The conclusion that follows is narrow and useful. A departure city does not have a price character, because the measure is computed per route against a per-route denominator. Any claim of the form "fly out of X, it is cheaper" is a claim about one pair, dressed as a claim about a city. The same origin can be the right answer and the wrong answer in the same afternoon, and the only unit at which the ratio means anything is the pair.
1. Four Origins, Eight Endpoints
The run's sixty routes are distributed across eleven origins and ten destinations. [source-1] The four origins with the largest route counts are the ones that make the point, because each of them has enough destinations to contain both ends of its own distribution.
| Origin | Routes | Lowest ratio | Highest ratio | Span (highest / lowest) | Signal labels held |
|---|---|---|---|---|---|
| PVG (Shanghai) | 7 | 0.373 to TPE | 1.283 to CDG | 3.44x | BUY, WAIT, WATCH, AVOID |
| SZX (Shenzhen) | 5 | 0.668 to TPE | 1.989 to KIX | 2.98x | BUY, AVOID |
| PEK (Beijing) | 7 | 0.444 to LHR | 1.152 to TPE | 2.59x | BUY, WATCH, AVOID |
| CAN (Guangzhou) | 7 | 0.592 to KIX | 1.224 to ICN | 2.07x | BUY, WAIT, WATCH, AVOID |
Sources: [source-1]
Sources: [source-1]
The last column is the part that is easy to overlook. A single origin produces four different signal labels in one run, and the labels are assigned per route. [source-1] Shanghai is simultaneously a BUY to Taipei, an AVOID to Paris and London, and a WATCH to Osaka, Tokyo, Incheon and Hong Kong. [source-1] A traveller who asks "is Shanghai cheap" is asking a question the instrument cannot answer, and the instrument's own output is the evidence.
The full Shanghai row is worth printing because it shows the middle of the distribution as well as the ends.
| Route from PVG | Signal | Current fare | Mean | Ratio | Months averaged | CV |
|---|---|---|---|---|---|---|
| PVG-TPE | BUY | $80 | $214.60 | 0.373 | 5 | 0.34 |
| PVG-KIX | WATCH | $314 | $325.80 | 0.964 | 5 | 0.07 |
| PVG-HKG | WATCH | $177 | $180.60 | 0.980 | 5 | 0.06 |
| PVG-TYO | WATCH | $344 | $338.20 | 1.017 | 5 | 0.04 |
| PVG-ICN | WATCH | $226 | $216.40 | 1.044 | 5 | 0.06 |
| PVG-LHR | AVOID | $798 | $631.60 | 1.263 | 5 | 0.31 |
| PVG-CDG | AVOID | $1,033 | $805.00 | 1.283 | 4 | 0.17 |
Sources: [source-1]
Five of the seven sit between 0.964 and 1.044, which is to say essentially on their own means, and two sit at the ends. [source-1] The distribution is not a smooth gradient across destinations; it is a cluster at parity with two outliers, and the outliers pull in opposite directions.
2. What the Two Ends Actually Say
The Taipei end is the cheapest ratio in the network. PVG-TPE at 0.373 means the current fare is 37.3 per cent of the route's own five-month mean, and the month-on-month change is minus 69 per cent. [source-1] The engine's own note on the route describes the fare as 63 per cent below the mean, a downward trend that may continue, high volatility, and a significant monthly fall. [source-1] Its coefficient of variation is 0.34, which the engine's method treats as a qualifier on how much weight the mean deserves. [source-2]
The Paris end is a different statement entirely. PVG-CDG at 1.283 means the current fare is 128.3 per cent of a four-month mean, and the month-on-month change is plus 57 per cent. [source-1] Its coefficient of variation is 0.17. [source-1] The route is not merely more expensive than its own average; it is more expensive on a shorter base than the Taipei route uses, which is the second-order problem in the comparison.
Put the two together and the arithmetic of the span is straightforward: 1.283 divided by 0.373 is 3.44, and the difference between the two fares in dollars is 953. [source-1] Neither number is a claim about Shanghai. The first is a claim about two divisions, and the second is a claim about two price levels on two routes with different distances, different demand structures and different month coverage.
The Shenzhen pair is the sharper illustration because both endpoints are in the same region and the same season. SZX-TPE at 0.668 sits at 192 dollars against a mean of 287.50, with a month-on-month change of minus 35.1 per cent. [source-1] SZX-KIX at 1.989 sits at 788 dollars against a mean of 396.25, with a month-on-month change of plus 118.3 per cent and a coefficient of variation of 0.59, the highest in the run. [source-1] One origin, two short-haul destinations, a span of 2.98 times, and the expensive end is also the least well-measured end.
3. Why an Origin Cannot Have a Character
Four mechanisms explain the spread, and none of them is about the city.
The first is that the denominator is computed per route. The mean in each ratio is built from the fares that particular route recorded over its own averaging window, and the window depth is not uniform. [source-1] In this run, forty-five routes were averaged over five months, thirteen over four and two over three. [source-1] A four-month mean and a five-month mean are not the same quantity, and a ratio computed on one is not directly comparable with a ratio computed on the other. [source-3]
The second is volatility. The coefficient of variation ranges from 0.02 on PEK-ICN to 0.59 on SZX-KIX in the same run. [source-1] A route with a 0.59 coefficient has a mean that moves with the sample, so its ratio can change substantially without its fare doing much. The engine's method note treats a high coefficient as a warning about the mean rather than about the fare. [source-2]
The third is that fare curves are seasonal in different phases. A Taipei route and a Paris route from the same city do not share a demand calendar, and the run's month set runs from October 2026 to February 2027, which places the Taipei window across a different set of holidays than the Paris window. [source-1] A ratio measured against a seasonal mean inherits the seasonality of that mean.
The fourth is competition on the pair rather than at the airport. The number of carriers serving a route, their pricing behaviour and the connecting alternatives available at each end all sit inside the pair, and none of them is a property of the departure city. [source-4]
4. What Survives as a Legitimate Comparison
Three comparisons survive the arithmetic, and the boundaries are worth stating because the wrong ones are tempting.
Within a route across time, the ratio is the right instrument, because the denominator belongs to the same route and moves with it. [source-3] The engine's own runs are designed for that reading, and a route moving from 1.229 to a lower value across runs is a meaningful statement about that route. [source-1]
Across routes on the same measure with the same window depth, a comparison of ratios is legitimate, and a comparison of the underlying dollars is not. A route at 442 dollars against a mean of 884 and a route at 78 dollars against a mean of 215 both sit near 0.5, and a reader comparing the fares would rank them an order of magnitude apart while the measure places them together. [source-3]
Across calibers, nothing is comparable. A ratio to mean, a month-on-month percentage, a coefficient of variation and a signal label are four different quantities, and the same run publishes all four. [source-3] The signal distribution for this run is thirteen BUY, twenty-seven WATCH, six WAIT and fourteen AVOID. [source-1]
| Signal | Routes | Share of 60 | What it asserts about the route |
|---|---|---|---|
| BUY | 13 | 21.7% | Current fare well below that route's own mean |
| WATCH | 27 | 45.0% | Near the route's own mean, within band |
| WAIT | 6 | 10.0% | Slightly above the mean, trend ambiguous |
| AVOID | 14 | 23.3% | Above the route's own mean by the band threshold |
Sources: [source-1] [source-5]
Sources: [source-1]
The distribution is a property of the portfolio, not of the market. Twenty-seven of sixty routes sitting at parity is a statement about where the monitored set sits relative to its own means, and a different monitored set would produce a different distribution on the same day.
5. What a Traveller Can Do With It
The practical consequence is a change in the unit of search. The question "which city is cheap to fly from" has no answer in this data; the question "which pair is below its own average right now" has sixty answers, of which forty-seven are not BUY. [source-1]
- Search the pair, not the city. Shanghai is the cheapest origin to Taipei and an AVOID to London and Paris in the same run. [source-1]
- Check the denominator depth before comparing two ratios. A four-month mean and a five-month mean are different bases. [source-1]
- Read the coefficient of variation with the ratio. SZX-KIX carries both the highest ratio and the highest volatility in the run. [source-1]
- Treat a BUY as a position, not a ticket. The measure says the fare sits below the route's own average; it says nothing about availability on a chosen date. [source-6]
The ground-side arrangements are the parts of a trip that a ratio cannot describe and that a traveller can fix in advance. A fixed-price airport transfer converts an arrival leg into a known cost, an eSIM data plan keeps a fare alert reachable while a booking is open, and flight compensation is the remedy if a fare that looked settled is disrupted by the carrier's own operations. [source-7] [source-8] [source-9]
The external fare tools work at the same unit as the ratio, which is the pair on a date. Google Flights' calendar comparison and Skyscanner's price calendar both answer a date-specific question, and a route average answers a different one. [source-6] [source-10] Using the average to choose a city and the calendar to choose a date is the correct division of labour, and reversing it produces exactly the confusion this run's four origins illustrate.
6. Conclusion: Report Both Ends
One run, sixty routes, four large origins, and within each origin a span between its cheapest and most expensive ratio of 2.07 to 3.44 times. [source-1] Shanghai holds the network's lowest ratio at 0.373 and its fourth highest at 1.283. [source-1] Shenzhen holds 0.668 and 1.989, the pair with the widest span and the least stable mean at the expensive end. [source-1]
The finding is not that any of those numbers is wrong. Every one of them is the correct output of a division that the engine publishes, with its mean, its window depth and its coefficient of variation attached. [source-1] The finding is that the ratio's unit is the route, and that anyone reading it as a property of a city has changed the unit without noticing.
A departure city is a point on a map. The measure describes pairs. The two ends of the Shanghai distribution are 0.373 and 1.283, and the distance between them is not a fact about Shanghai at all.
📑 Verified Evidentiary References (40 sources) — click to expand
- [1] OSINTRAI 96-node price-window engine: Sixty route pairs, generated 2026-10-22T16:06:34+0800, numpy-2.4.6 osintrai.com/intel/geo
- [2] OSINTRAI Volatility Method: Coefficient of variation as a signal qualifier osintrai.com/intel/geo
- [3] OSINTRAI Content Standards: Ratio versus absolute price comparison rules and cross-caliber prohibition osintrai.com/intel/geo
- [4] IATA: Air passenger market analysis and route competition reporting iata.org
- [5] OSINTRAI Signal Dictionary: BUY, WATCH, WAIT and AVOID construction rules osintrai.com/intel/geo
- [6] Google Flights: Fare and calendar comparison methodology google.com/travel/flights
- [7] Kiwitaxi: Fixed-price airport transfer booking kiwitaxi.com
- [8] Airalo: eSIM data plans for international itineraries airalo.com
- [9] AirHelp: Flight disruption compensation claims airhelp.com
- [10] Skyscanner: Fare trend and price calendar methodology skyscanner.net
- [11] KAYAK: Monthly flight deal tracker and fare trend methodology kayak.com/news/monthly-flight-deals
- [12] AirHint: Flight price tracker and predictor methodology airhint.com/flight-price-tracker
- [13] Flare: Fare drop digest and qualifying deal discount tracking flareflights.com/research/stats/average-fl…
- [14] SkySonar: Error fare and airfare deal monitoring skysonar.com/en-us/deals
- [15] US Bureau of Transportation Statistics: Air fare index series bts.gov
- [16] Eurostat: Air passenger price indices ec.europa.eu/eurostat
- [17] Expedia: Fare and date-specific search methodology expedia.com
- [18] Booking.com: Fare calendar and price index information booking.com
- [19] Aviation Week: Airline pricing and distribution analysis aviationweek.com
- [20] Statista: Airline and airport fee statistics statista.com
- [21] OSINTRAI monitored route register: Sixty route pairs and their endpoint aerodromes osintrai.com/intel/geo
- [22] OSINTRAI price-window chain manifest: Completeness accounting for the 2026-10-22 run osintrai.com/intel/geo
- [23] OSINTRAI archive: Same destination, 3.84 times the price web.archive.org/web/2026/https://osintrai.…
- [24] OSINTRAI archive: The mean moved at 10:06 web.archive.org/web/2026/https://osintrai.…
- [25] OSINTRAI archive: $442 against $2,048: the two ends of one run web.archive.org/web/2026/https://osintrai.…
- [26] OSINTRAI archive: Eight routes to buy, nineteen to avoid web.archive.org/web/2026/https://osintrai.…
- [27] Airports Council International: Airport competition and route development reporting aci.aero
- [28] Civil Aviation Administration of China: Route approvals and traffic statistics caac.gov.cn
- [29] OAG: Airline capacity and frequency data oag.com
- [30] Cirium: Flight and fare data analytics cirium.com
- [31] Amadeus: Fare filing and availability data amadeus.com
- [32] OSINTRAI route-risk engine: Sixty monitored route pairs, checked 2026-10-22T16:06:34+08:00 osintrai.com/intel/geo
- [33] OSINTRAI heat registry: Composite heat definition and cross-caliber rules osintrai.com/intel/geo
- [34] Exa semantic search: Fare and deal document retrieval layer exa.ai
- [35] Google Trends: Search interest measurement methodology trends.google.com/trends
- [36] OSINTRAI daily scan manifest: Completeness accounting for 2026-10-22 osintrai.com/intel/geo
- [37] Aviasales: Date-specific fare availability on the PVG-TPE and LAX-TYO pairs aviasales.com
- [38] China Southern Airlines: Route network and fare conditions csair.com
- [39] China Eastern Airlines: Route network and fare conditions ceair.com
- [40] OSINTRAI archive: Free checked bag credit cards: the only math that decides if one pays web.archive.org/web/2026/https://osintrai.…

