{
    "meta": {
        "title": "Canadian Rainwater Harvesting Potential by City",
        "description": "Annual precipitation normals (mm) for 16 Canadian cities from the ECCC Canadian Climate Normals 1981-2010, for estimating rooftop rainwater-harvesting potential.",
        "generated": "2026-07-02T18:24:10+00:00",
        "version": "1.0",
        "license": "https://creativecommons.org/licenses/by/4.0/",
        "license_name": "CC BY 4.0",
        "attribution": "D-Central (d-central.tech). Climate data: Environment & Climate Change Canada, Canadian Climate Normals 1981-2010.",
        "source": "https://d-central.tech/canadian-rainwater-harvesting/",
        "normals_period": "1981-2010",
        "units": "annual total precipitation in millimetres (rainfall + snowfall water-equivalent)",
        "data_source": "Environment & Climate Change Canada (ECCC), Canadian Climate Normals 1981-2010",
        "dateModified": "2026-07-02",
        "count": 16,
        "record_count": 16,
        "method": "Collectable volume = roof footprint (m2) x (annual precipitation mm / 1000) x runoff coefficient x 1000 L/m3. Standard runoff coefficients: metal 0.95, asphalt shingle 0.90, flat gravel 0.80.",
        "provenance": "annual_precip_mm figures are the published ECCC Canadian Climate Normals 1981-2010 annual total-precipitation normals at the airport station used by the companion heating-degree-day dataset, at integer resolution. Each row carries a confidence flag; \"moderate\" rows have a known airport-vs-downtown station ambiguity and should be verified against the official ECCC station normal before engineering use.",
        "disclaimer": "Planning reference only — not potability guidance or an engineering design. Annual precipitation includes snowfall water-equivalent; in cold-climate cities a large share falls as snow that a winterized (drained) collection system will not capture, so realistic yield can be well below the annual figure. Rainwater is non-potable without proper filtration and disinfection. Climate normals are 30-year averages; any single year will differ. Verify the exact ECCC station value at climate.weather.gc.ca/climate_normals before design use."
    },
    "rows": [
        {
            "id": "vancouver-bc",
            "city": "Vancouver",
            "province": "BC",
            "station": "Vancouver Intl A",
            "annual_precip_mm": 1189,
            "confidence": "high",
            "notes": "ECCC 1981-2010 = 1189 mm at Vancouver Intl A (YVR, Richmond). Downtown and North-Shore stations are far wetter (Vancouver city ~1457, North Vancouver Capilano ~2522) — pick the station nearest your roof."
        },
        {
            "id": "victoria-bc",
            "city": "Victoria",
            "province": "BC",
            "station": "Victoria Intl A",
            "annual_precip_mm": 883,
            "confidence": "moderate",
            "notes": "Victoria Intl A (Sidney / North Saanich) ~883 mm. The downtown Gonzales station is far drier (~705 mm); the Olympic rain shadow makes totals vary sharply over short distances — verify your microclimate."
        },
        {
            "id": "calgary-ab",
            "city": "Calgary",
            "province": "AB",
            "station": "Calgary Intl A",
            "annual_precip_mm": 419,
            "confidence": "high",
            "notes": "ECCC 1981-2010 = 418.8 mm at Calgary Intl A (326 mm rain + 129 cm snow). High-elevation semi-arid prairie; a large share falls as snow, so a winterized system captures well under this figure."
        },
        {
            "id": "edmonton-ab",
            "city": "Edmonton",
            "province": "AB",
            "station": "Edmonton Intl A",
            "annual_precip_mm": 477,
            "confidence": "high",
            "notes": "ECCC 1981-2010 = 476.9 mm at Edmonton Intl A (366 mm rain + 111 mm snow-water). The city-centre (Blatchford) station is drier (~456 mm)."
        },
        {
            "id": "saskatoon-sk",
            "city": "Saskatoon",
            "province": "SK",
            "station": "Saskatoon Diefenbaker Intl A",
            "annual_precip_mm": 365,
            "confidence": "high",
            "notes": "ECCC 1981-2010 at Saskatoon Diefenbaker Intl A. Semi-arid; roughly a third falls as snow — plan around the open-season rain fraction."
        },
        {
            "id": "regina-sk",
            "city": "Regina",
            "province": "SK",
            "station": "Regina Intl A",
            "annual_precip_mm": 390,
            "confidence": "high",
            "notes": "ECCC 1981-2010 at Regina Intl A. Semi-arid continental; snow-heavy winter share."
        },
        {
            "id": "winnipeg-mb",
            "city": "Winnipeg",
            "province": "MB",
            "station": "Winnipeg Richardson Intl A",
            "annual_precip_mm": 521,
            "confidence": "high",
            "notes": "ECCC 1981-2010 at Winnipeg Richardson Intl A. Continental; roughly a quarter of the annual total arrives as snow."
        },
        {
            "id": "toronto-on",
            "city": "Toronto",
            "province": "ON",
            "station": "Toronto Pearson Intl A",
            "annual_precip_mm": 831,
            "confidence": "high",
            "notes": "ECCC 1981-2010 at Toronto Pearson Intl A. The downtown lakeshore station is similar (~817 mm). Well-distributed year-round with a modest snow share."
        },
        {
            "id": "ottawa-on",
            "city": "Ottawa",
            "province": "ON",
            "station": "Ottawa Macdonald-Cartier Intl A",
            "annual_precip_mm": 920,
            "confidence": "high",
            "notes": "ECCC 1981-2010 at Ottawa Macdonald-Cartier Intl A. About a quarter of the annual total falls as snow."
        },
        {
            "id": "montreal-qc",
            "city": "Montreal",
            "province": "QC",
            "station": "Montreal–Trudeau Intl A",
            "annual_precip_mm": 1000,
            "confidence": "high",
            "notes": "ECCC 1981-2010 ~1000 mm at Montreal–Trudeau Intl A, of which ~210 cm is snow. Reliable rainfall through the open season."
        },
        {
            "id": "quebec-city-qc",
            "city": "Quebec City",
            "province": "QC",
            "station": "Quebec / Jean Lesage Intl A",
            "annual_precip_mm": 1190,
            "confidence": "high",
            "notes": "ECCC 1981-2010 = 1189.7 mm at Quebec / Jean Lesage Intl A. Snowy climate — a large winter share (~300 cm snow)."
        },
        {
            "id": "fredericton-nb",
            "city": "Fredericton",
            "province": "NB",
            "station": "Fredericton A",
            "annual_precip_mm": 1078,
            "confidence": "high",
            "notes": "ECCC 1981-2010 at Fredericton A. Humid-continental Maritime valley; well-distributed rainfall with a snowy winter share."
        },
        {
            "id": "halifax-ns",
            "city": "Halifax",
            "province": "NS",
            "station": "Halifax Stanfield Intl A",
            "annual_precip_mm": 1468,
            "confidence": "moderate",
            "notes": "Airport site (Stanfield) inland of the harbour; the coastal/downtown Citadel station differs. One of the wetter major cities — verify which station applies to your site."
        },
        {
            "id": "st-johns-nl",
            "city": "St. John's",
            "province": "NL",
            "station": "St. John's Intl A",
            "annual_precip_mm": 1534,
            "confidence": "moderate",
            "notes": "St. John's Intl A — among Canada's wettest cities (frequent rain plus heavy snow and drizzle). Integer value approximate; verify the exact ECCC station normal."
        },
        {
            "id": "whitehorse-yt",
            "city": "Whitehorse",
            "province": "YT",
            "station": "Whitehorse A",
            "annual_precip_mm": 262,
            "confidence": "high",
            "notes": "ECCC 1981-2010 at Whitehorse A. Subarctic rain-shadow desert — one of the driest cities in Canada; much of the total is snow, so a winterized (drained) system captures little of it."
        },
        {
            "id": "yellowknife-nt",
            "city": "Yellowknife",
            "province": "NT",
            "station": "Yellowknife A",
            "annual_precip_mm": 289,
            "confidence": "high",
            "notes": "ECCC 1981-2010 at Yellowknife A. Subarctic semi-arid; very dry, with much of the annual total falling as snow. Plan around the short open-water season."
        }
    ]
}