I'm a hobby watchmaker so I send and receive small (under 500g) parcels via Canada Post quite often. I'm also a retired software engineer, so I started to wonder how Canada Post calculates how much it costs to ship a small package to various addresses within Canada. It turns out, there's a Rate Code Table, which gives the rate code (basically the price) from a given origin postal code to every other postal code or Forward Sotation Area (FSA = the first three characters of your postal code). The Rate Codes then need to be mapped to an actual dollar figure which is published by Canada Post in a massive lookup table. Together with a shapefile of the FSAs from Statistics Canada (and a bit of python), I was able to produce this Choropleth of the base cost to ship a small (500g) parcel from Vancouver to everywhere else within Canada via Xpresspost. The actual price at the post office would have a fuel surcharge (a percentage that's added to the Rate Code and which is updated weekly based on the average price of diesel from two weeks before) and taxes (PST+GST / HST)added on top of the base cost.

    Canada Post seems to assign rate codes based both on distance but also on the logistical difficulty in delivering to the destination. I was surprised that parts of eastern BC had the same rate code as rural Newfoundland, both area remote and rural, but one is over half way to Europe and the other is a 10 hour drive from Vancouver.

    by petehudso

    5 Comments

    1. > Choropleth

      Today i learned a new word.

      But yeah, neat map! I too wonder why delivering to eastern BC is considered as difficult as delivering to newfoundland or parts of the NW Territories.

    2. Sources:

      Rate Code tool: [https://www.canadapost-postescanada.ca/cpc/en/tools/rate-code-table-lookup.page](https://www.canadapost-postescanada.ca/cpc/en/tools/rate-code-table-lookup.page)

      Rate Code price table: [https://www.canadapost-postescanada.ca/cpc/doc/en/support/prices/consumer-prices.pdf](https://www.canadapost-postescanada.ca/cpc/doc/en/support/prices/consumer-prices.pdf)

      Stats Canada FSA shapefile (Sept 2022): [https://www150.statcan.gc.ca/n1/en/catalogue/92-179-X](https://www150.statcan.gc.ca/n1/en/catalogue/92-179-X)

      Python libraries used: re, pandas, geopandas, and matplotlib

    3. How is it more expensive to ship something to St. John’s than to Iqaluit? I’ve worked in North American logistics for 15 years and I can’t quite get my head around that one

    4. AerithDeservedIt on

      With a quick look at a map, those areas in Eastern BC seem to be covered by the Banff and Jasper National Parks.

      More importantly, they seem to be the areas that are predominantly the Rocky Mountains.

      My guess is, that little indent of yellow is for Golden and Revelstoke, but the rest of that area is probably very difficult to reach (like, hermits that built a house on the side of a mountain), or is also land not inhabited by anyone.

    Leave A Reply