City Based Demand Explained


Disclaimer: This information is provided by a third party and is in no way endorsed or otherwise confirmed to be accurate by the folks at AWS. The information below is all based on the game's official manual and endless hours of tinkering and expirimentation and at the time of writing (June 2020) is considered accurate for the current City Based Demand (CBD) mechanics for cargo (pax demand is still static).


Why does City Based Demand (CBD) exist?

Historically, demand on routes between airports has been static, calculated based on real world data. This means "airport clusters" such as the New York City area have static demand on routes from each airport. In real life, Newark is a hub for United Airlines and JFK is a hub for Delta Airlines and American Airlines and these three airlines compete with each other for the same demand in the New York City area. However, using static demand models in AWS means that airlines at Newark don't compete with airlines at JFK--the demand is static and can't shift between the two airports. If these airlines existed in AWS under the static model, Newark competes with JFK as much as a tiny airport in the Outback of Australia--it's effectively two separate worlds that never intersect in spite of serving the same population. CBD is a more accurate simulation of the real world demand.

These two routes are effectively the same, but static demand is determined based on real life instead of player actions in the game world.

To "remedy" this issue and make the world more realistic, CBD is a model where demand is decoupled from airports and instead is generated by the nearby population. This dynamic system means that Newark and JFK are no longer walled gardens where airlines operate completely independent of each other in their separate sandboxes--when an airline at Newark adds flights, demand available to JFK and other nearby airports are affected.


What is demand?

Demand is simply people or cargo wanting to move between two places. Specifically, AWS separates the world into squares that are 1 degree of latitude by 1 degree of longitude (we'll reference this as a single "square"). The end result is 64,800 unique squares covering the entire surface of the Earth. It sounds like a lot, but since two thirds of it is water, the actual number of squares used is much lower. AWS doesn't care about people or goods moving within the same square--only goods moving between squares. Technically, when we use the word demand we are referring to QUANTITIES demanded and not the textbook economic definition of demand.

Squares around LAX airport in Los Angeles and JFK airport in New York City.

What is supply?

Supply is airline capacity--seats and cargo space. This is important because AWS operates as a supply side platform model--the demand on a route is determined by the supply. Whether that demand actually exists is expressed in AWS as "potential demand"--the maximum amount of demand that is theoretically possible based on an airport's surrounding squares. This may sound confusing, but the gameplay for a player is going to be identify potential demand → add supply → a percentage of potential demand shows up as "actual demand". The specific details will be covered in further detail in other sections.

Cargo route planning--from left to right: Potential Demand, Actual Demand, Supply

How is demand determined?

Each square on the map has meta data associated with it for population, industrial, tourism, and business activities. Additionally, there is an infrastructure component for quality of roads and railways--highly developed areas with transportation alternatives will reduce demand. After all, it's much cheaper to transport cargo on a truck 200 miles versus paying for expensive air cargo.

Each square generates demands based on these activity and population values. It is important to note that the values are relative at the country level. This means that every country will have a 10/10 industrial activity square somewhere, but the 10/10 squares in a "rich first world country" is going to generate much different demand than a 10/10 square in a "poor third world country". Note that you can't change or influence these values, nor can you change how "rich" a country is. These values do change over time though as populations and wealth can increase dramatically over time in places such as China.

As mentioned above, demand is people and goods moving between TWO squares. After demand is calculated for two different squares, AWS does magic to determine what the actual demand is between two squares. For major population centers such as New York City to London, the amount of demand is going to be high in both directions. For a major population center and the middle of nowhere, demand will be asymmetric with large amounts generated one way with little demand on the return leg.

Square meta data near Chicago

How do airports capture demand?

After each square has been assigned demand to every other square in the game, it now has to be distributed to the local airports. Each airport has a "traffic level" value from 1-10 that is an indicator of how busy an airport is--how many flights plus cargo and pax volume is there? The higher the traffic level, the larger the "catchment radius" for the airport will be--that is, they will get demand from additional squares that are further away. As a result of these catchment radii, several airports have overlapping demand and compete for the same demand. Catchment areas do NOT cross political borders (for now...there are plans make this possible in the future in places like the EU)--an airport on the US border will not be able to serve squares in Canada just because the squares fall in the catchment radius.

Some airports are simple, such as Gary - Chicago (KGYY) competing with only Chicago O'Hare (largest circle) and Chicago Midway (middle circle)
Some airports are more complicated, such as London Heathrow (EGLL) overlapping with 23 other airports.
Some airports have exclusivity with no competition, such as Hong Kong (VHHH).

Since demand is generated by squares and not airports, it is the catchment radii of two airports that determines the potential demand of that specific route. Take a look at our catchment squares for LAX and JFK from the previous section:

The amount of demand between these two airports is going to be the summation of all the demand in each airport's catchment area. There are 7 squares at LAX and 9 squares at JFK. Since demand is calculated at the square level, that means there is a potential demand value from each of the 9 JFK squares to each of the 7 LAX squares. That means each JFK square has 7 demand values (one for each LAX square) for a total of 63 demand values. The amount of potential demand from JFK to LAX is going to be the summation of these 63 demand values. It is important to note that the return route of LAX to JFK is calculated the same way, just with different squares--the 7 JFK squares each have 9 demand values (one for each JFK square). This can lead to a large difference creating asymettrical demand where you might fly the outbound leg competely full and the return leg completely empty.

Under the CBD model, airports are simply gateways for demand. When going back to the London Heathrow example with 23 overlapping airports, we know they are overlapping and competing for demand because they are gateways for the same squares on the map.


How do airports compete for demand?

Since squares generate demand and airports are simply gateways for that demand, airports are almost always in competition with other airports for demand. For simplicity, we are going to use Gary and Chicago Midway as an example. Gary's catchment area covers a single square while Midway covers the same catchment area and then some. O'Hare also overlaps, but we are going to ignore O'Hare for this example.

Gary catchment radius--O'Hare is the biggest circle with Midway being the middle circle.
Chicago Midway has a catchment population of 16 million, but 8 million of it lives in the single square that Gary has in its catchment radius.

In this example, Gary is a gateway for a single square with 8 million people and Midway is a gateway for 7 squares with 16 million people--50% of Midway's population is contained in a single square. This is not uncommon for major metro areas. To simplify the example and ensure anything happening at O'Hare doesn't skew our example, we are going to use Deadhorse, Alaska as our destination airport.

Deadhorse, Alaska: one square in the middle of nowhere.

In spite of being in the middle nowhere, there is a population with industrial activity which means there is demand from our Chicago squares to our Deadhorse square. When we review the routes, we can see that Chicago Midway has approximately twice the potential demand as Gary, which is what we would expect based on our respective catchment area squares.

Midway = 3940kg / Gary = 2430kg potential demand

Note the second bar which is ACTUAL demand. Right now no one is flying this route (including O'Hare) which means no demand has shifted. What you are seeing is the "default demand" when a route isn't being flown. Since we know Midway completely overlaps the Gary catchment area, we can deduce a few things. The first is that since Midway serves 7 squares with 3940kg potential demand and Gary has 2430kg, the 6 squares that Gary doesn't serve is generating 1510kg (the difference) of potential demand. Since Midway is overlapped by O'Hare, Midway is competing with only O'Hare for 1510kg of demand and competing with both Gary and O'Hare for 2430kg of demand. You can see that the current demand for both added up (1390kg + 570kg = 1960kg) is less than the total potential of 3940kg for Midway, which means the difference of 1980kg is currently being sent to O'Hare. However, since no one in serving this route, an airline has the ability to add supply and shift the 1390kg and 1960kg away from Midway and O'Hare to capture most/all of the potential demand if there is no competition from any other airport.

So given all of this, how does demand get shifted between airports? If there is zero service between two squares on the map, the demand is distributed equally, as you can see from the above example. If demand is added by multiple airports serving a square, the demand is shifted proportionally. For example, if 4000kg of supply is added from Midway and 4000kg of supply is added from Gary, Midway will have 6 extra squares where they don't compete with Gary. Otherwise, demand is distributed proportionally based on supply. Note that CI, RI, and everything else airline specific is irrelevant--all squares care about are airports.

Result of adding 4000kg at both Midway and Gary is ACTUAL demand shifting with 1215kg at Gary and 2725kg at Midway.

Now that potential demand has been developed into actual demand by providing supply, the airlines at each airport are now competing for the actual demand.


How do airlines capture demand?

This is a short section because you probably already know the answer to this. Factors such as frequency, route image, pricing, and company image all determine the actual demand captured. Just because you were successful in shifting potential demand in to actual demand doesn't mean it ends up on your flight. It is still very possible to have 1000kg of actual demand and provide 1000kg of supply and still fly empty if you aren't doing all of the other things right.

An important concept to understand when capturing demand as an airline is understanding the "airport layer" and how to exploit it for your personal gain. Consider the Chicago catchment areas for Gary and Midway. On a route with huge cargo potential, such as Chicago to London that would require multiple flights, you now have two options for serving the Chicago area. You can either fly many flights to a single large airport such as O'Hare with a huge catchment area and pay very high fees that large airports charge for handling etc, or you can opt to spread your many flights to multiple smaller airports with much lower fees while serving the same exact catchment radius. For example, much of O'Hare's catchment area is north of Chicago and overlaps with Milwaukee (KMKE) which is almost always a smaller airport with lower fees. This means instead of flying 10 flights to O'Hare, you could fly 5 flights to Milwaukee and 5 flights to Gary and get the same big demand that O'Hare gets, but split across two airports with much lower fees, generating signfiicantly more profit.

In addition to lower fees, you should also get higher load factors due to a lack of competition. Flying from Heathrow to O'Hare is going to have significant competition and any supply you add is also going to provide demand for your competitors. Flying from Heathrow to Gary and being the only airline on the route means you'll have zero compeititon for the demand you're shifting/generating by your supply. This "hack" also allows you to fly larger aircraft. If there are 5 flights with 1000kg supply you can attract the same demand by flying a single aircraft with 5000kg supply and the demand you are supplying won't be filling up your competitors planes.

Instead of flying to a major New York City airport (JFK, Newark, LaGuardia) you can serve nearly all the same demand by flying into Lehigh International (KABE) and Long Island (KISP).

Sound ridiculous? The current gameworld fees for the primary versus secondary airports are below and are roughly triple for the privilege of flying in to a primary airport. Furthermore, slots at secondary airports are nearly free whereas you can expect to pay 7 figures at a primary airport. An important note is that in most cases you SHOULD NOT compete with yourself by flying in to multiple airports that are mostly overlapping each other. There are exceptions, but the rule of thumb is you should have a single airport "gateway" for each square for maximum efficiency. Additionally, you should not obsess over capturing every square--airports inevitably expand over time so even though Midway has a larger catchment area than Gary, in time Gary will expand to serve additional squares with very high demand that will be served automatically when it expands.

Another great example is Fort Worth - Meacham Field which overlaps with DFW and Dallas Love. Due to the location of the airport, Meacham is just one traffic level away from having the same catchment area of Dallas Love. Currently, you can serve half of DFW by flying in to Meacham which will ultimately help it expand it's catchment area to be as relevant as Dallas Love and operate much more profitably than other airlines flying in to DFW and Dallas Love.

Meacham Field (KFTW) on the left, Dallas Love (KDAL) on the right (KDFW being the third airport on the map).

How do I compete effectively?

This guide contains far more information than you'll use in actually analyzing routes, but hopefully you have a better grasp on why things happen so things feel less random. In the static pax model, airports create demand to other airports using routes. In the CBD model, squares create demand to other squares using airports, creating an additional dynamic layer of abstraction to make the simulation more realistic.

In order to compete effectively in a CBD environment, the first thing you must do is embrace oversupply. Under the static model oversupply is bad because demand is static--there is no benefit to realize by oversupplying a route. In the real world, airlines operate at ~75% load factors because they have oversupplied routes. Demand is chaos and an educated guess at best, but AWS has spoiled players with static demand and absolutes, insulating them from competitors at nearby airports.

The next important concept is to consider competitor supply at other airports, but don't obsess. If you researched every New York flight to London with all the different possible route combinations with overlapping airports (remember Heathrow has 23 overlapping airports), you will trick yourself in to believing bad data. Every airport has a different catchment area and just because one airport has some supply doesn't mean it's going to all of your potential demand. Potential demand is like a bucket of water--you might know where a cup of the water came from X, but it's all mixed together and you can't tell which cup of water came from X. Airlines provide supply to airports and squares provide demand to airports. Your goal should be supplying an airport to shift demand and expand it's catchment area followed by competing with other airlines. Your airline can't win until your airport wins first.

In my opinion, the most important thing CBD empowers airlines to do is create massive opportunities for those who don't follow the herd. You can create a massive cargo airline based out of Gary. You can start a low cost carrier flying in to secondary airports with access to the same demand as the primary airports. You can fly first class passengers with Heathrow-like demand out from a secondary airport in London to a secondary airport in New York. You can fly cargo routes from major cities like London to the middle of nowhere America with actual cargo demand, creating routes that never existed before. Right now CBD is largely neglected by players (cargo) because they don't understand it. Now is the time to tinker with cargo and figure out how it works before CBD for pax is implemented and hopefully this guide was helpful.


How do I analyze CBD route data to identify viable routes?

Tungstennedge has created a tutorial focused on analyzing CBD route data to identify viable routes that is recommended reading: Cargo Basics