Skip to content
WP Go Maps Documentation
Home

Initial Setup

3
  • Installing the Plugin
  • Map Engine Selection Guide
  • Changing your Map Engine

Map Engines

8
  • Creating a Google Maps API key
  • Protecting your Google Maps API key from unauthorized use – Setting up website restrictions (HTTP referrers)
  • Creating an Azure Maps subscription key
  • Creating a Stadia Maps API Key
  • Creating a MapTiler API Key
  • Creating a LocationIQ Access Token
  • Address Providers
  • Tile Servers & Tilesets

First-time users

3
  • Creating your first map
  • Creating your first marker
  • Displaying your Map on your WordPress site

Map Features

50
  • Map Features Overview
  • Accessibility and WCAG Compliance
  • Shortcodes
    • Shortcodes – Quick Start
    • Map Shortcode
    • Store Locator Shortcode
    • Category Filter Shortcode
    • Category Legends Shortcode
    • Infowindow Shortcode
    • Marker Listing Shortcode
    • Directions Shortcode
    • Using WP blocks
  • Markers
    • Editing a Marker
    • Marker Gallery
    • Fine-tuning a Marker’s position
    • Adding video to your Marker
    • Embedding iframes in your markers
    • Customizing your info Window
    • Info Window Styles
    • Using Custom marker Icons on your map
    • Sticky Markers
    • Adding Custom fields to your Marker
    • Marker Listing
    • Enabling distance features
  • Map Display
    • Setting your Map type
    • Using your map in a widget
    • Styling Wizard
    • Using GET variables to Control your Map
  • Filtering
    • Store Locator
    • Marker Filtering
    • Enabling the category Legend
    • Shape Filtering
  • Shapes
    • Shape Info Windows
    • Shape Library
    • Polyline & Polygon Line Styles
  • Performance & Analytics
    • Optimization
    • Map Insights
    • Marker Caching
  • Drawing Tools
    • Adding a Polygon
    • Adding a Polyline
    • Adding a Circle
    • Adding a Rectangle
    • Adding an image overlay
    • Adding a Point Label
    • Adding a Heatmap
  • Themes
    • Creating a Custom Map Theme – Google maps engine
    • Change your Map Theme – Theme Presets for OpenLayers & Leaflet
    • Edit your Map Theme – Theme Editor for OpenLayers & Leaflet
    • Using a custom image as a map tile
  • Directions
    • Enabling Directions
    • Enabling Directions with OpenRouteService

Integrations

8
  • Integrations Overview
  • WooCommerce – Checkout Map
  • WooCommerce – Product Location Editor
  • Translating the plugin with WPML
  • Post Type Locations
  • Advanced Custom Fields
    • Advanced custom fields
    • Enabling simple ACF Fields for display in the description field of the Info Windows of your ACF Map
    • Using Custom images as the marker icons for your ACF map markers

Importing and Exporting Data

5
  • Importing Files
  • Exporting Data and Settings
  • Bulk JPEG Import
  • Using KML and GeoRSS files
  • Improving Reliability of Scheduled Imports

Frequently Asked Questions

34
  • System Requirements
  • How to create an Administrator account for Support agents
  • GDPR
  • Licensing & Account
    • Why am I getting “Domain Limit Exceeded” for my License key
    • Purchase Model
    • Plugin Licenses
    • I am an NPO
    • I did not receive my invoice?
    • How can I upgrade my purchase of WP Go Maps
    • Where can I get a new download of the plugin
    • How do I update WP Go Maps?
  • Map Functionality
    • Map Tilt Controls
    • Marker Render Mode
    • Finding Custom Marker Icons
    • Why did my suggestions stop working?
    • How do I change scroll/pan behaviour on a mobile device
    • How do I dynamically set the search area in the Store locator
    • How do I Start the map in Street View
    • How to Create a Marker Cluster (Group)
    • How to use real time tracking
    • Marker Ratings
    • Why aren’t my ACF, WooCommerce or Post Locations Markers showing on my map?
  • Technical
    • How to add Support agents to your Google API Project
    • How do I change the WP Go Maps Plugin Language
    • How do I restrict Autocomplete to a Specific Country
    • Using WP Go Maps with Elementor
    • How can I disable externally hosted Google fonts so that I can be GDPR compliant?
    • WP Go Maps and Webcraftic Clearfy
    • I have a Customization Request
  • User Generated Content
    • How to allow visitors to create markers
    • Separating the VGM form from the Map
  • Integrations
    • WP Rocket – Map Won’t Load
    • Real Cookie Banner – Map Won’t Load
  • Hosting
    • One.com – Markers not loading

Troubleshooting

12
  • Autocomplete Disabled
  • Use my location is not working
  • I’m Getting a Maps Multiple API Error
  • I’m Getting a “jQuery not found” Error
  • My Map is Not Showing On My Website
  • Markers Are Not Showing on My Map on the Front-end
  • API Not Activated Map Error
  • This page can’t load Google Maps correctly
  • This API project is not authorized to use this API
  • Geocode failed (Request denied) error
  • My import is not working – Geocode failed (Missing address, lat and lng) (Rows: 2, 3, 4, 5, 6, 7, 8….)
  • This folder does not exist, please create it.

Customization

9
  • Customization Guides
  • Markers & Info Windows
    • Dynamic Marker Creation
    • Open Marker by Title (URL)
    • Open Marker by Marker Field (URL)
    • Updating Panel Info Window Dynamically
  • Maps
    • Map Manipulation
    • Refresh Map in Realtime
  • Database
    • Creating a Marker (PHP)
    • Edit & Remove Marker (PHP)

Developers

91
  • Basic Changelog
  • Pro Changelog
  • Gold Changelog
  • VGM Changelog
  • Templates
    • Template Overrides
  • Hooks
    • Filters
      • Basic
        • wpgooglemaps_filter_map_div_output
        • wpgmza_admin_persistent_notices_dynamic_titles
        • wpgmza_admin_persistent_notices_dynamic_messages
        • wpgmza_admin_persistent_notice
        • wpgmza_admin_ui_menu_current_action
        • wpgmza_create_{$class}
        • wpgmza_gdpr_notice
        • wpgmza_gdpr_settings_tab_content
        • wpgmza_plugin_get_default_settings
        • wpgmza_google_maps_api_params
        • wpgmza_internal_engine_build_version_plugins
        • wpgmza_internal_engine_build_version_flags
        • wpgmza_internal_engine_build_version
        • wpgmza_xml_cache_generated
        • wpgmza_fetch_integrated_markers
        • wpgmza_plugin_get_localized_data
        • wpgmza_settings_danger_zone_truncate_tables
        • wpgmza-get-library-dependencies
        • wpgmza_global_settings_tabs
        • wpgmza_global_settings_tab_content
        • wpgmza_global_settings_save_redux
        • wpgmza_map_shortcode_get_default_attributes
        • wpgmza_shortcode_map_options
        • wpgmza_map_shortcode_get_html_attributes
        • wpgmza_shortcode_map_components
        • wpgmza_shortcode_map_container_before
        • wpgmza_shortcode_map_container_inside
        • wpgmza_shortcode_map_container_after
        • wpgmza_sl_shortcode_get_default_attributes
        • wpgmza_standalone_component_classlist
        • wpgmza_standalone_component_wrap_attributes
        • wpgmza_store_locator_radii_options
        • wpgmza_localized_strings
        • wpgmza_system_info_compile_items
        • wpgmza-map-editor-navigation-{$dataGroup}
        • wpgmza-map-editor-settings-{$dataGroup}
        • wpgmza-map-editor-settings-blocks
        • wpgmza-map-editor-sidebar-blocks
        • wpgmza_styling_settings_save
    • Actions
      • Basic
        • wpgmza_admin_notice_process_background_action
        • wpgooglemaps_hook_user_js_after_core
        • wpgooglemaps_basic_hook_user_js_after_core
        • wpgooglemaps_hook_user_js_after_localize
        • wpgmza_admin_persistent_notices_create_defaults
        • wpgmza_admin_ui_menu_registered
        • wpgmza_admin_ui_menu_items_added
        • wpgmza_admin_ui_render_content_before
        • wpgmza_admin_ui_render_{$action}_before
        • wpgmza_admin_ui_render_{$action}_after
        • wpgmza_admin_ui_render_content_after
        • wpgmza_check_map_editor_backwards_compat
        • wpgmza_admin_ui_render_content_before
        • wpgmza_admin_ui_render_{$pageSlugged}_before
        • wpgmza_admin_ui_render_{$pageSlugged}_after
        • wpgmza_admin_ui_render_content_after
        • wpgmza_country_select_created
        • wpgmza_require_feature_classes
        • wpgmza_installer_page_created
        • wpgmza_installer_page_on_post
        • wpgmza_map_list_page_created
        • wpgmza_xml_cache_saved
        • wpgmza_page_dom_add_form_nonces
        • wpgmza_plugin_core_on_activate
        • wpgmza_plugin_core_on_deactivate
        • wpgmza_plugin_core_on_init
        • wpgmza_plugin_core_on_first_run
        • wpgmza_plugin_load_scripts
        • wpgmza_plugin_core_update_all_xml_files
        • wpgmza_settings_danger_zone_before_delete
        • wpgmza_settings_danger_zone_after_delete
        • wpgmza_register_rest_api_routes
        • wpgmza_rest_api_init
        • wpgmza_script_loader_enqueue_styles
        • wpgmza_enqueue_scripts
        • wpgmza_script_loader_enqueue_scripts
        • wpgmza_script_loader_localize_data_complete
        • wpgmza_script_loader_enqueue_custom_js
        • wpgmza_script_loader_enqueue_custom_css
        • wpgmza_script_loader_enqueue_codemirror
        • wpgmza_script_loader_enqueue_writersblock
        • wpgmza_global_settings_page_created
        • wpgmza_shortcodes_registered
        • wpgmza_shortcode_before_output
        • wpgmza_base_upgrade_hook
        • wpgmza_map_edit_page_created
        • wpgmza_styling_page_created

Archived: Legacy (V9)

39
  • First-time users (Legacy)
    • Creating your first map (Legacy)
    • Creating your first marker (Legacy)
    • Displaying your Map on your WordPress site (Legacy)
  • Map Features (Legacy)
    • Store Locator (Legacy)
    • Shortcodes (Legacy)
    • Setting your Map type (Legacy)
    • Using GET variables to Control your Map (Legacy)
    • Using your map in a widget (Legacy)
    • Markers (Legacy)
      • Editing a Marker (Legacy)
      • Sticky Markers (Legacy)
      • Marker Gallery (Legacy)
      • Enabling distance features (Legacy)
      • Marker Filtering (Legacy)
      • Embedding iframes in your markers (Legacy)
      • Adding video to your Marker (Legacy)
      • Customizing your info Window (Legacy)
      • Marker Listing (Legacy)
      • Using Custom marker Icons on your map (Legacy)
      • Adding Custom fields to your Marker (Legacy)
      • Fine-tuning a Marker’s position (Legacy)
    • Drawing Tools (Legacy)
      • Adding a Polygon (Legacy)
      • Adding a Polyline (Legacy)
      • Adding a Circle (Legacy)
      • Adding a Rectangle (Legacy)
      • Adding a Heatmap (Legacy)
    • Themes (Legacy)
      • Creating a Custom Map Theme – Google maps engine (Legacy)
      • Change your Map Theme – Theme Presets (Legacy)
    • Directions (Legacy)
      • Enabling Directions (Legacy)
      • Enabling Directions for OpenLayers (Legacy)
    • User Interface Style (Legacy)
      • User Interface Style (Legacy)
  • Integrations (Legacy)
    • Advanced custom fields (Legacy)
    • Translating the plugin with WPML (Legacy)
    • WooCommerce – Product Location Editor (Legacy)
    • WooCommerce – Checkout Map (Legacy)
  • Importing and Exporting Data (Legacy)
    • Importing Files (Legacy)
    • Exporting Data CSV
    • Exporting Data (JSON)
    • Bulk JPEG Import (Legacy)
    • Using KML and GeoRSS files (Legacy)
View Categories
  • Home
  • Docs
  • Initial Setup
  • Map Engine Selection Guide

Map Engine Selection Guide

8 min read

Selecting the right Map Engine is the an important step in building your map. The engine acts as the foundational and determines not only how your map looks but also the features available and how much additional setup and cost is needed to get up and running.

This guide will compare our available engines, discuss their limitations and setup requirements, and ultimately help you decide how you would like to proceed!

Default Engine – Zero Cost, Zero Fuss #

We believe that getting a map up and running shouldn’t require any additional billing or complicated setup.

This is why we automatically enable our Zero Cost mapping engine preset, which uses Leaflet, OpenFreeMap and Nominatim to provide you with an effortless setup.

This engine provides fully functional maps, out-of-the-box, without any initial API key setup, sign-ups or additional billing requirements. This is the best starter mapping engine for most users, and for many will remain the only mapping option you will ever need.

Note: If you do need Directions functionality, you will need to add your own OpenRouteService API Key to our settings area to get started.

Engine Comparison #

EngineKey RequiredBilling RequiredAddress ProviderDirections ProviderGreat For
Zero CostNoNoNominatimOpenRouteService*A quick start with a perfectly functional basic map and zero sign-ups.
Google MapsYesYesGoogle Maps GeocodingGoogle Maps DirectionsAdvanced features like traffic, themes, and specialized layers.
Azure MapsYesYesAzure Maps GeocodingAzure Maps DirectionsPowerful alternative to Google Maps with robust security and rich feature sets.
Stadia MapsYesNo (With Limits)NominatimOpenRouteService*High-quality map tiles.
MapTilerYesNo (With Limits)NominatimOpenRouteService*Beautiful map tiles.
LocationIQYesNoLocationIQ GeocodingLocationIQ DirectionsA key-required, cost-effective alternative with a generous free usage tier.
LeafletNo *NoNominatimOpenRouteService*Developer-centric custom builds and specialized map use cases.
Open Layers (v10)No *NoNominatimOpenRouteService*Free, reliable, open-source custom maps with various tileset options.

* Note on OpenRouteService (ORS): The OpenRouteService provider is free, but requires an API Key, to prevent access to the API from being abused.

* Note on API keys for OpenLayers and Leaflet: Some tile servers do require a key, but many of the available options are completely key-free.

Zero Cost #

Zero cost mapping is aimed at providing you with a completely free mapping engine, right out-of-the-box. This engine preset uses Leaflet, OpenFreeMap and Nominatim to reduce the need for any additional setup.

Because this is built on top of Leaftet you can expect full feature parity, along with beautiful vector based map tiles from OpenFreeMap. Nominatim acts as the address suggestion/geocoding system for this engine.

Note: Nominatim is free to use, but is subject to strict usage limits. We cache all queries made to Nominatim to help reduce the impact on their service. If you require more you can switch to an alternative Address provider within the settings

Strengths

  • Zero Cost Mapping
  • Lightweight
  • Quick Setup
  • Great Performance
  • Address Suggestions (Limited)
  • Powerful Features

Caveats

  • Styling Limitations
  • Directions Key Required (ORS)
  • Not intended for very large audiences

Google Maps #

Google Maps remains the industry standard for web mapping, recognized globally for its reliability, powerful location services, and extensive ecosystem. Selecting Google Maps is the choice for users who require the highest level of detail and access to advanced features unique to the Google platform.

This engine unlocks the full power of Google’s real-time services, including Google Maps Directions for accurate routing, highly precise Google Maps Geocoding for address search and suggestion, Advanced Map Styling, and Specialized Layers for displaying real-time traffic data, transit overlays, and bicycle paths.

In order to leverage Google’s services a Google Maps API Key is required and you must link a valid billing method in order for these services to function as expected. Google does offer a generous monthly free usage credit, but still requires a billing method to be set up.

Strengths

  • Industry Standard
  • Extensive Features
  • Directions
  • Address Suggestions
  • Satellite Maps
  • Location Accuracy

Caveats

  • Key & Billing Required (* Free Credits)
  • Additional Setup Needed

Azure Maps #

Azure Maps is Microsoft’s powerful, cloud-based mapping platform and serves as a highly capable alternative to Google Maps. It provides developers with robust, production-ready location services that integrate seamlessly into the Microsoft ecosystem.

This engine is distinguished by its strong support for various visual data types and flexible tile rendering. You gain access to essential features like Azure Maps Directions and Azure Maps Geocoding, alongside unique layers such as Satellite and Aerial Imagery and detailed Weather Maps (including radar and infrared). The flexibility to easily switch between diverse map types makes it ideal for data-visualization projects.

Like other cloud-based providers, an Azure Maps API key is mandatory for authentication, and a valid Azure billing method must be linked to your account to track usage. While a free usage tier is available, setting up the key and billing ensures your maps are secured and functional within the terms of service.

Strengths

  • Google Maps Alternative
  • Extensive Features
  • Directions
  • Address Suggestions
  • Satellite Maps
  • Location Accuracy
  • Powered by Leaflet

Caveats

  • Key & Billing Required
  • Additional Setup Needed

Stadia Maps #

Stadia Maps is the ideal provider for users seeking a powerful, cost-effective alternative to our other engines that still offers high-quality map data and advanced features. Stadia Maps is built on a foundation of open data and technology, allowing them to offer beautiful, customizable map styles and robust tools with transparent pricing.

The Stadia Maps engine provides all the core services a professional map requires. It is also known for its diverse library of visually stunning base maps, including custom light, dark, and specialized ‘Alidade’ themes, which makes it an excellent choice for map design and data visualization.

Stadia Maps requires an API Key for authentication and security, but does not require you to provide a credit card or billing method to access their generous free usage tier. This “no-surprise billing” approach makes it a perfect choice for non-commercial projects, testing, or any application where cost management is a high priority.

Strengths

  • Free Plan Available (with limits)
  • Beautiful Map Tiles
  • Competitive Feature Set
  • Address Suggestions (with limits)
  • Powered by Leaflet

Caveats

  • Key Required
  • Directions key required (ORS)

MapTiler #

MapTiler is a comprehensive mapping platform that excels in providing high-quality global map data built on OpenStreetMap and other open data sources, paired with professional-grade tools. It is an industry-favorite for developers who require a wide selection of map aesthetics and reliable data.

A key feature of MapTiler is its large portfolio of Ready-to-Use Maps. This gives users immediate access to a variety of visually distinct base maps—from street and satellite imagery to outdoor and topographic styles.

MapTiler offers a robust Free Plan which includes generous usage limits, but it requires an API Key for all services.

Strengths

  • Free Plan Available (with limits)
  • Beautiful Map Tiles
  • Competitive Feature Set
  • Address Suggestions (with limits)
  • Powered by Leaflet

Caveats

  • Key Required
  • Directions key required (ORS)

LocationIQ #

LocationIQ is an affordable, developer-friendly alternative to more expensive mapping platforms. It provides a comprehensive suite of location services with a particular focus on Geocoding and Reverse Geocoding, which is powered by robust open-source data.

A significant draw for LocationIQ is its pricing structure, which includes a very generous free tier designed to support small projects and initial development without requiring a credit card to get started.

An API Key is required, but can easily be obtained in just a few steps!

Strengths

  • Free Plan Available (with limits)
  • Beautiful Map Tiles
  • Directions
  • Competitive Feature Set
  • Address Suggestions
  • Powered by Leaflet

Caveats

  • Key Required

Leaflet #

Leaflet is the lightweight, developer-first alternative to complex and costly mapping platforms, providing a robust, mobile-friendly foundation for interactive web maps. Its core feature set includes essential components like markers, popups, and GeoJSON support, all packaged in a minimal 42KB library designed for performance and speed. This focus on simplicity ensures fast development cycles and an optimal user experience across all devices.

A significant advantage of Leaflet is its completely free and open-source nature, meaning there are zero licensing costs, vendor lock-in, or expensive tiered usage fees for the library itself.

To use the Leaflet JavaScript library and get a map working, no API Key is required for the library itself. While some commercial map tile providers may require a key for their specific map data, you can easily use completely open and free tile servers without any key or initial registration.

Leaflet powers many of our internal engine presets, including Zero Cost, Azure Maps, Stadia Maps, MapTiler and LocationIQ

Strengths

  • No Engine Costs
  • Extremely Lightweight
  • Great Performance
  • Competitive Feature Set
  • Address Suggestions (with limits)
  • Community Driven

Caveats

  • Key Required for some tile servers
  • Directions key required (ORS)

OpenLayers #

OpenLayers is a high-performance, professional-grade JavaScript library designed for complex web mapping. It has been our default for many previous releases and serves as a great alternative to Leaflet.

OpenLayers is completely free, robustly open-source, and we include many fully free tile server options for you to use without any initial billing requirements.

Strengths

  • No Engine Costs
  • Lightweight
  • Good Performance
  • Competitive Feature Set
  • Address Suggestions (with limits)
  • Community Driven

Caveats

  • Key Required for some tile servers
  • Directions key required (ORS)
Updated on November 10, 2025

What are your Feelings

  • Happy
  • Normal
  • Sad

Share This Article :

  • Facebook
  • X
  • LinkedIn
  • Pinterest
Table of Contents
  • Default Engine - Zero Cost, Zero Fuss
  • Engine Comparison
  • Zero Cost
  • Google Maps
  • Azure Maps
  • Stadia Maps
  • MapTiler
  • LocationIQ
  • Leaflet
  • OpenLayers
Documentation by WP Go Maps