Play is off because your device asks for less motion. Use the slider or the arrows.
Basemap. OpenFreeMap, © OpenMapTiles, data from OpenStreetMap contributors (ODbL).
Province of British Columbia data. Contains information licensed under the Open Government Licence – British Columbia. Retrieved 2026-10-21 from the BC Data Catalogue:
Parks and green spaces. Boundaries come from the Province's Local and Regional Greenspaces dataset, which collects them from municipal and regional websites. Rows from these providers carry their own Open Government Licence statements, shown again when you click a park:
Rows with no provider statement are covered by the Province's licence above. Parks run by the Capital Regional District are not on this map yet.
Flow. The moving dashes show the direction creeks drain, taken from the Province's stream lines. They do not show how much water is flowing or how fast. Canals get dashes too. Reaches the Province maps as underground pipes or connection lines have no dashes.
Terrain shading (on when the page opens). Hillshade drawn in your browser from AWS Terrain Tiles. Canada terrain data contains information licensed under the Open Government Licence – Canada. United States 3DEP (formerly NED) and global GMTED2010 and SRTM terrain data courtesy of the U.S. Geological Survey. Global ETOPO1 terrain data U.S. National Oceanic and Atmospheric Administration. The full list of sources is in the tile attribution notes.
3D terrain (on when the page opens). It lifts the map from the same elevation tiles as Terrain shading, so the credits above apply to it too.
Ecoregions (off until you switch it on). Ecoregions 2017 © Resolve. Licensed under CC BY 4.0. From ecoregions.appspot.com (report: An Ecoregion-Based Approach to Protecting Half the Terrestrial Realm). Clipped to this map's box, from a simplified copy of the data, so the coast and edges are coarse.
Industry and waste sites (off until you switch it on). Only records with an open licence, each credited in its popup:
A dot with no figures is a location, not an empty site. Figures are labelled as reported, as capacity or as modelled. Sites from sources with unclear or share-alike licences are left out.
Live data from Environment and Climate Change Canada (radar, sea currents, wind, sea temperature, sea saltiness, weather alerts, air quality, current conditions and river gauges; each off until you switch it on). Data Source: Environment and Climate Change Canada. Contains information licenced under the Data Server End-use Licence of Environment and Climate Change Canada. Where a weather station or gauge is run by another body, its popup names that body. Weather alerts are shown exactly as issued. This map is not an alerting service and is not for safety decisions: use Environment Canada's own alerts.
Sea currents (off until you switch it on). Modelled surface currents, hour by hour, from the Coastal Ice Ocean Prediction System for the Salish Sea (CIOPS-SalishSea) of Environment and Climate Change Canada: a 500 m grid, a 48-hour forecast, tides included, served as an experimental product through its GeoMet service. The moving particles are a drawing of the model's currents, not a measurement, and they are sped up far beyond the real water so you can see them. This is an experimental model and is not for navigation or any safety decision. Each hour is two small images (about 146 KB in all, on a 1 km grid), requested only for the hour shown and, while Play runs, the next one. Clicking the sea while this layer is on shows the modelled current at that point, read from the images already loaded.
Wind (off until you switch it on). Modelled wind 10 m above the surface, hour by hour, from the High Resolution Deterministic Prediction System (HRDPS, 2.5 km) of Environment and Climate Change Canada, served through its GeoMet service. The moving particles are a drawing of the forecast, not a measurement, and they are sped up far beyond the real air so you can see them. It is a forecast model and is not for navigation or any safety decision: use Environment Canada's own marine and weather forecasts. Each hour is two small images (about 29 KB in all), requested only for the hour shown and, while Play runs, the next one. Wind and Sea currents share one picture, so only one can be on.
Sea temperature and Sea saltiness (each off until you switch it on). The temperature and the salt content of the water 0.5 m below the surface, hour by hour, from the Coastal Ice Ocean Prediction System for the Salish Sea (CIOPS-SalishSea) of Environment and Climate Change Canada, served as numbers through its GeoMet service. It is an experimental model on a 500 m grid, and the service is asked for every second cell, a 1 km grid. This map colours the numbers itself, on one scale for every hour (6 to 20 °C, 20 to 34 psu), and the key under each box is that scale. The picture is a drawing of the model, not a measurement, and it is not for navigation or any safety decision. Each hour is one grid of 73 KB, requested only for the hour shown (the hour of Sea currents while that is on, and while it plays, the next one). Clicking the sea while one is on reads the value from the grid already loaded and asks the service for nothing. Sea temperature and Sea saltiness share one picture, so only one can be on.
Tides and tidal currents (off until you switch it on). Predictions from the U.S. National Oceanic and Atmospheric Administration (NOAA/NOS/CO-OPS), whose disclaimer says its information on government servers is “in the public domain” and asks for attribution. They are shown for two water level stations (Port Angeles and Friday Harbor) and five tidal current stations (Race Rocks, Discovery Island, Haro Strait, Trial Island and Cattle Point). A third water level station, Victoria Harbour, comes from the Canadian Hydrographic Service (next paragraph). The curves are drawn here from NOAA’s numbers and are not official NOAA material. Predictions are not for navigation. Nothing is requested from NOAA until you click a station. Then one or two small requests (about 1 to 9 KB in all) are made for that station, and they are not repeated for six hours.
Victoria Harbour tide gauge (part of Tides and tidal currents). Observed and predicted water levels from station 07120 of the Integrated Water Level System of the Canadian Hydrographic Service (CHS), used under the CHS licence agreement (dated 2023-08-14, read 2026-10-22). This is a non-commercial demo. The licence bars derivative products made for commercial purposes, for sale or profit, and this map is not made for any of them. The levels are not for navigation and none is stored on this site. Nothing is requested from CHS until you click the dot. Then three small requests (about 17 KB in all, 0.4 seconds apart because the service allows 3 a second and 30 a minute) ask for the highs and lows, the levels the gauge has measured in the last 3 hours and the predicted levels for 24 hours, and they are not repeated for 15 minutes. The curve is drawn here from CHS’s numbers, and the observed levels are real-time readings that have not been reviewed. The notice the licence asks for: This product is not to be used for navigation. This product was made by or for the User Darren Zal and contains intellectual property (Data) of the Canadian Hydrographic Service of the Department of Fisheries and Oceans. The copyrights in the Data are and remain the property of His Majesty the King in Right of Canada and shall not be sold, licensed, leased, assigned or given to a third party. The incorporation of the Data in this product does not constitute an endorsement or an approval of this product by the Canadian Hydrographic Service, the Department of Fisheries and Oceans or His Majesty the King in Right of Canada
Seafloor depth (off until you switch it on). Depth below the sea, in metres. In Canadian waters it comes from the NONNA bathymetry of the Canadian Hydrographic Service (CHS), in cells of 100 m and, from map zoom 11, of 10 m, used under the CHS NONNA licence (read 2026-10-22). While the box is ticked your browser asks CHS’s server for map tiles and paints them again in this map’s blues, so the whole layer has one key. Nothing is stored on this site, though your browser may keep a tile for a day, as CHS’s server tells it to. This is a non-commercial demo. Elsewhere the colours come from the global ETOPO1 grid of the U.S. National Oceanic and Atmospheric Administration, in the same elevation tiles as Terrain shading (credited above). Its cells are 1 arc-minute (about 1.2 by 1.85 km here), so the picture shows broad shapes only, with no small channels, reefs or shore depths, and nothing shallower than 10 m is coloured where it is used. It is not for navigation or any safety decision: use official nautical charts. The notice the licence asks for: This product was made by Darren Zal and contains intellectual property of the Canadian Hydrographic Service (CHS) of the Department of Fisheries and Oceans. This product does not meet the requirements of the Navigation Safety Regulations, 2020 under the Canada Shipping Act, 2001. Charts and publications issued by or on the authority of CHS must be used to meet the requirements of those regulations. The copyright in the data are and remain the property of His Majesty the King in Right of Canada and shall not be sold, licensed, leased, assigned or given to a third party. The incorporation of CHS data in this product does not constitute an endorsement or an approval of this product by the Canadian Hydrographic Service, the Department of Fisheries and Oceans or His Majesty the King in Right of Canada.
Marine life and protection (each box off until you switch it on). These layers show protected areas, two mapped boundaries, a model and an old survey. None shows where an animal is now, and none is a sighting. Not for navigation. Each loads one file from this site when you tick it. The files were built on 2026-10-22 from open government data and cut at the edge of the area this map reaches.
Protected marine areas. From the Canadian Protected and Conserved Areas Database (CPCAD), compiled by Environment and Climate Change Canada from the governments and agencies that report each area. Only the marine zone of each area is shown, because the land of a park is on this map already. Race Rocks, the Oak Bay Islands, Satellite Channel and Ten Mile Point ecological reserves, the Victoria Harbour, Esquimalt Lagoon and Shoal Harbour migratory bird sanctuaries, the Gulf Islands National Park Reserve and the Outer Gulf Islands Glass Sponge Marine Refuge are among them. The no-take line in a popup is CPCAD’s own “Marine Resource Use” field (all, part or none of the area), with the meaning given in its user manual. Boundaries are approximate.
Southern Resident killer whale critical habitat. The boundary that Fisheries and Oceans Canada maps as critical habitat for this population under the Species at Risk Act (Critical Habitat for Aquatic Species at Risk – Canada), which says the map is “for general guidance only”. It is a boundary, not a sighting. Vessels must stay at least 1,000 m from Southern Resident killer whales from June 1, 2026 to May 31, 2027, at least 200 m from all other killer whales and at least 100 m from all other whales, dolphins and porpoises. Some exceptions apply. Rules: Transport Canada Ship Safety Bulletin 08/2026 for the 1,000 m distance and Marine Mammal Regulations, Schedule VI for the 200 m and 100 m distances.
Killer whale important area. One area that experts drew by hand on paper maps in 2009 as important to Southern Resident killer whales from June to October, from the Fisheries and Oceans Canada layer Important Areas for Cetaceans in Strait of Georgia Ecoregion. It is a boundary, not a sighting. Its edge is approximate, it carries no added management, and it does not show where the whales are now. Vessels must stay at least 1,000 m from Southern Resident killer whales from June 1, 2026 to May 31, 2027, at least 200 m from all other killer whales and at least 100 m from all other whales, dolphins and porpoises. Some exceptions apply. Rules: Transport Canada Ship Safety Bulletin 08/2026 for the 1,000 m distance and Marine Mammal Regulations, Schedule VI for the 200 m and 100 m distances.
Whale and porpoise density. A model from Fisheries and Oceans Canada (Spatial density models of cetaceans in the Canadian Pacific estimated from 2018 ship-based surveys), made from the Pacific Region International Survey of Marine Megafauna, which ran from July to early September 2018. It covers humpback whales, harbour porpoises and Dall’s porpoises in squares of 25 km² in Canadian waters only. It is a model of summer 2018, not where animals are now. The colours split the squares into five groups of equal size for the species picked, and the key gives animals per 100 km². A popup gives the model’s own number for the square (Nhat, the animals it predicts there) and its uncertainty (CV, higher is less certain). Vessels must stay at least 1,000 m from Southern Resident killer whales from June 1, 2026 to May 31, 2027, at least 200 m from all other killer whales and at least 100 m from all other whales, dolphins and porpoises. Some exceptions apply.
Coastal habitat (kelp beds, eelgrass, herring spawn and seabird colonies). From the Province of British Columbia’s Coastal Resource Information Management System (CRIMS): Kelp Beds, Eelgrasses, Herring Spawn and Bird Colonies. Contains information licensed under the Open Government Licence – British Columbia. CRIMS is a legacy dataset that began in 1979 and was only updated now and then, and the Province has no plans to update it. The eelgrass here was mapped in 1998 and the herring spawn records run from 1937 to 1986, so none of it is a current record.
Federal data in the marine layers above (protected areas, critical habitat, the important area and the density model). Contains information licensed under the Open Government Licence – Canada.
Change over time (each box off until you switch it on). The layers in this section share one time slider. A year on the slider shows each layer as it was then: the herring spawn of that season, the latest air photo, ecosystem mapping or land cover made in or before that year, and the forest lost from 2001 up to it. The readout under the slider says which year each layer is showing.
Herring spawn by year. From Fisheries and Oceans Canada, Pacific Herring Spawn Index Data (the file of 2026, read 2026-10-22), one point for each place and season in the area this map reaches. A year is DFO’s herring season, from July to June, so 1951 is the 1950/1951 season. The spawn index is in tonnes. DFO describes it as a relative index of spawning biomass and a minimum estimate, and its surveys changed in 1969, 1979 and 1988, so fewer places in later years is partly a change in how much was surveyed. One place named for a First Nation is left out, as in the other layers. Contains information licensed under the Open Government Licence – Canada.
Herring spawn before 1951. From D. E. Hay, P. B. McCarter, R. Kronlund and C. Roy, Spawning areas of British Columbia herring: a review, geographical analysis and classification. Volume V. Strait of Georgia, Canadian Manuscript Report of Fisheries and Aquatic Sciences 2019, Fisheries and Oceans Canada, 1989. The figures are copied from the version at publications.gc.ca, under the Government of Canada’s terms for non-commercial reproduction. The report gives spawn records by shore section and season from 1937, and one record in Sidney Channel on 14 April 1932, with no places, so the map draws one ring over each section’s spawning area, placed from DFO’s location index. DFO treats records before 1951 as unreliable for indexing and leaves them out of stock assessments, so these are survey records, not amounts of fish.
Air photos, 1932 and 1950. From Natural Resources Canada, Temporal Series of the National Air Photo Library (NAPL) - Victoria, British Columbia (1932-1950), made into map tiles for this map and kept on its own server (map-api.regeneratevictoria.org), which your browser reads while the box is ticked (the year before stays drawn until the new year’s tiles are in, and both years show while the swipe is open). The record says the photos of the two years are not necessarily matched to each other, so they may not line up exactly. Contains information licensed under the Open Government Licence – Canada.
Garry oak and other sensitive ecosystems. From the Province of British Columbia, Sensitive Ecosystems Inventory (SEI) Detailed Polygons: the inventory of East Vancouver Island and the Gulf Islands (surveyed in 1994 and 1995 from air photos of 1992), its 2002 update, and the mapping of Garry oak ecosystems from air photos of 2014 (completed in 2021). Only polygons with woodland, herbaceous ground, broadleaf woodland, coastal bluff or sparse vegetation are kept, with every patch the 2002 update marks as disturbed, and the shapes are simplified for the web. The inventory has no Garry oak class. Contains information licensed under the Open Government Licence – British Columbia.
Tree canopy from LiDAR, 2013, 2019 and 2023. From the City of Victoria’s tree canopy layers of 2013, 2019 and 2023, which the City says were created by Terra Remote Sensing Inc. from LiDAR at 1 m and are “a calculated best estimate of coverage”. This map draws one colour where each layer has a value, on one grid of about 2 m for all three years, and shows no values, because their unit is not stated. The 2023 file is marked as a draft. City of Victoria only. Contains information licensed under the Open Government Licence – City of Victoria.
Forest loss, 2001 to 2025. From the University of Maryland’s Global Forest Change 2000–2025, version 1.13 (Hansen, M. C., P. V. Potapov, R. Moore, M. Hancher, S. A. Turubanova, A. Tyukavina, D. Thau, S. V. Stehman, S. J. Goetz, T. R. Loveland, A. Kommareddy, A. Egorov, L. Chini, C. O. Justice, and J. R. G. Townshend. 2013. High-Resolution Global Maps of 21st-Century Forest Cover Change. Science 342: 850-53). Source: Hansen/UMD/Google/USGS/NASA. Licensed CC BY 4.0. Changes made here: the loss-year grid is clipped to the demo box and moved to the map’s projection, cell for cell, and coloured by year. Its makers define loss as “a stand-replacement disturbance, or a change from a forest to non-forest state”, say the years before 2011 have not been reprocessed in the way the later ones were, and say area should not be estimated by counting its cells, so this map gives no areas. It sees forest clearing, not single street trees.
Land cover, 2010, 2015 and 2020. From Natural Resources Canada, Land Cover of Canada, 30 m cells from Landsat images, made into one picture of the demo box that this site stores (from the federal datacube’s files, read 2026-10-25). Contains information licensed under the Open Government Licence – Canada.
Earthquakes (off until you switch it on). Credit: U.S. Geological Survey. USGS-authored or produced data and information are considered to be in the U.S. Public Domain. Early magnitudes and positions are revised.
Life observations (off until you switch it on). A sample of up to 300 occurrence records from GBIF, dated in the last 12 months. Only records licensed CC0 or CC BY 4.0 are kept, and records withheld or generalised by their publisher are dropped. Whales, dolphins and porpoises are left out, so a recent sighting can't send boats after them. Positions are rounded to about 1 km. Each popup keeps the record's dataset, licence and source link.
Example place. The Bowker Creek pin is an example, not an event. Its figures are from the 2012 Bowker Creek Blueprint, linked in the pin. Its position is a point on the creek from OpenStreetMap.
Please note. Boundaries are for orientation. They are simplified for the web and are not survey or legal boundaries. Creeks that run in pipes may be missing or partly mapped. It is not endorsed by the Province of British Columbia or any data provider.
Privacy. This page uses no analytics and no cookies. Map tiles load from OpenFreeMap (tiles.openfreemap.org), so that service receives your browser's tile requests. Terrain shading and 3D terrain are on when the page opens, so elevation tiles load from Amazon Web Services (s3.amazonaws.com), which receives those requests too, until you switch both off. Nothing else loads until you switch a layer on. The live layers then send your browser's requests, with your internet address, to the service behind each: Environment and Climate Change Canada for radar, sea currents, wind, sea temperature, sea saltiness, alerts, air quality, conditions and gauges (api.weather.gc.ca and geo.weather.gc.ca), the U.S. Geological Survey for earthquakes (earthquake.usgs.gov), GBIF for life observations (api.gbif.org), the U.S. National Oceanic and Atmospheric Administration for tides and tidal currents (api.tidesandcurrents.noaa.gov, only after you click a station) and the Canadian Hydrographic Service for the Victoria Harbour tide gauge (api-iwls.dfo-mpo.gc.ca, only after you click it) and for Seafloor depth (nonna-geoserver.data.chs-shc.ca, while its box is ticked). A request to geo.weather.gc.ca that gets no answer, or an answer that says the server is busy, is sent once more. Seafloor depth also draws from the elevation tiles (s3.amazonaws.com). Ecoregions, Industry and waste sites and the Marine life and protection layers each load a file from this site only, when you tick them. Under Change over time, Air photos load tiles from this map’s own server (map-api.regeneratevictoria.org, run by the map’s author at Hetzner in Finland) while their box is ticked, and the other layers there load files from this site only, when you tick them.
Software. MapLibre GL JS 6.9.0 (BSD-3-Clause) and PMTiles 4.5.0 (BSD-3-Clause), included in this site.