Connecting Google Maps to QGIS without any Plugins (Updated 24/09/2018)

QGIS through its organization, OSGeo (Open Source Geospatial Foundation), released QGIS version 3.0 as early adopter release. Since QGIS 3.0 is released with major haul (ex: API), a lot of plugins working on version 2.xx will not work on this version. Two plugins I find quite useful are QuickMap and OpenLayers do not work on version 3.0 yet. I hope in the future, the developers of both plugins are going to resolve this incompatibility issue.

Propitiously, QGIS 3.0 coming with TMS supports most of the map services provided by QuickMap and OpenLayers plugins. Before I explain how to add google maps and other map services into QGIS 3.0, let me explain TMS. Tile Map Service (TMS) according to the wiki is a protocol for serving maps as tiles i.e. splitting the map up into a pyramid of images at multiple zoom levels. A Tile Map Service (TMS) provides access to cartographic maps of geo-referenced data, not direct access to the data itself.

There are several notable TMS providers, such as Google, Esri, and OpenStreetMap. As listed on https://qms.nextgis.com/, http://server.arcgisonline.com/ArcGIS/rest/services, and https://wiki.openstreetmap.org/wiki/Tile_servers, Google Maps, Esri, OpenStreetMaps TMS servers are:

  1. Esri World Imagery: https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}
  2. Google Maps: https://mt0.google.com/vt/lyrs=m&x={x}&y={y}&z={z}
  3. Google Satellite: https://mt0.google.com/vt/lyrs=s&x={x}&y={y}&z={z}
  4. Google Satellite Hybrid: https://mt0.google.com/vt/lyrs=y&x={x}&y={y}&z={z}
  5. Google Terrain: https://mt0.google.com/vt/lyrs=t&x={x}&y={y}&z={z}
  6. Google Terrain Hybrid: https://mt0.google.com/vt/lyrs=p&x={x}&y={y}&z={z}
  7. Google Traffic: https://mt0.google.com/vt/[email protected],traffic&x={x}&y={y}&z={z}
  8. Google Transit: https://mt0.google.com/vt/[email protected],transit&x={x}&y={y}&z={z}
  9. OpenStreetMap: http://a.tile.openstreetmap.org/{z}/{x}/{y}.png
  10. OpenTopoMap: https://a.tile.opentopomap.org/{z}/{x}/{y}.png
  11. OpenCycleMap: https://tile.thunderforest.com/cycle/{z}/{x}/{y}.png
  12. Strava All: https://heatmap-external-b.strava.com/tiles-auth/all/bluered/{z}/{x}/{y}.png?v=19&Key-Pair-Id=[Your Key-Pair-Id]&Policy=[Your Policy]&Signature=[Your Signature]
  13. Strava Ride: https://heatmap-external-b.strava.com/tiles-auth/ride/bluered/{z}/{x}/{y}.png?v=19&Key-Pair-Id=[Your Key-Pair-Id]&Policy=[Your Policy]&Signature=[Your Signature]
  14. Strava Run: https://heatmap-external-b.strava.com/tiles-auth/run/bluered/{z}/{x}/{y}.png?v=19&Key-Pair-Id=[Your Key-Pair-Id]&Policy=[Your Policy]&Signature=[Your Signature]

Connecting Google Maps to QGIS

  1. Test google tile maps to determine the fastest on your network by pinging it since Google utilizes four servers (mt0, mt1, mt2, and mt3). (optional) (Figure 1)

    Figure 1

  2. Right click on XYZ tiles in QGIS browser window > New Connections… (Figure 2)

    Figure 2

  3. Put name Google_Maps and URL (https://mt0.google.com/vt/lyrs=m&x={x}&y={y}&z={z}) (Figure 3)

    Figure 3

  4. Change zoom to 21 and click OK (Figure 4)

    Figure 4

  5. Do the same for other google maps TLS servers including Esri and OpenStreetMap
  6. Test if you’ve put name XYZ name and URL correctly by adding it to QGIS layer window. (Figure 5 & 6)

    Figure 5

    Figure 6

That’s it! Plugins are not needed to put TMS based map into QGIS.

Update (25/04/2018/):

It turns out that is workable to add Google Map traffic, transit, and bicycling solely the layer without the basemap. The servers:

  1. Google Traffic: https://mt0.google.com/[email protected],traffic|seconds_into_week:-1&style=3&x={x}&y={y}&z={z}
  2. Google Transit: https://mt0.google.com/[email protected],transit|seconds_into_week:-1&style=3&x={x}&y={y}&z={z}
  3. Google Bicycling: https://mt0.google.com/[email protected],bike|seconds_into_week:-1&style=3&x={x}&y={y}&z={z}

You may also like...

1 Response

  1. May 18, 2018

    […] without any plugins or QuickMapServices or OpenLayers plugin installed. If you have not, refer to here or here or […]

Leave a Reply

Your email address will not be published. Required fields are marked *