{"id":2348,"date":"2026-10-20T08:32:18","date_gmt":"2026-10-20T07:32:18","guid":{"rendered":"https:\/\/wpgeodirectory.com\/documentation\/article\/google-maps-not-loading\/"},"modified":"2026-10-20T08:39:57","modified_gmt":"2026-10-20T07:39:57","slug":"google-maps-not-loading","status":"publish","type":"gd_place","link":"https:\/\/wpgeodirectory.com\/documentation\/article\/troubleshooting\/google-maps-not-loading\/","title":{"rendered":"Google Maps not loading in GeoDirectory: what to check"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">When GeoDirectory maps stay blank or keep loading, the cause is nearly always the Google API key, the Google Cloud account behind it, or something on the site blocking the map scripts or the WordPress REST API. Work through these checks in order.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Look at the browser console<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Open the page with the broken map, press F12 and look at the Console tab. Google prints a named error when the key is the problem, such as InvalidKeyMapError, RefererNotAllowedMapError, ApiNotActivatedMapError or a billing error. That tells you which of the next steps to look at.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Check the API key and Google Cloud account<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Enter your key at GeoDirectory &gt; Settings &gt; General under Map Settings. You don&#8217;t need a separate API key plugin.<\/li>\n\n\n\n<li>In Google Cloud, billing must be enabled on the project. Maps won&#8217;t load on a project without billing, even if you stay within the free usage.<\/li>\n\n\n\n<li>Enable the APIs GeoDirectory uses: Maps JavaScript API, Places API and Geocoding API.<\/li>\n\n\n\n<li>If the key is restricted by website, add your domain with and without www.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The steps for creating a working key are in <a href=\"https:\/\/wpgeodirectory.com\/documentation\/article\/installation\/get-a-google-api-key\/\">Get a Google API key<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Test with OpenStreetMap<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Under GeoDirectory &gt; Settings &gt; General, show the advanced settings and set Maps API to OpenStreetMap API. If maps now appear, the problem is on the Google side. If they still don&#8217;t load, the problem is on your site. Set it back afterwards. The default, Automatic (recommended), loads Google first and falls back to OpenStreetMap when Google can&#8217;t load.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Make sure the REST API isn&#8217;t blocked<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Maps load their markers from the WordPress REST API, at <code>\/wp-json\/geodir\/v2\/markers\/<\/code> on your site. If a security plugin, firewall or custom code disables or restricts the REST API, the map may load with no markers or not finish loading. Open that URL in your browser. You should get a JSON response, not a 403 error or a message that the REST API is disabled. If it&#8217;s blocked, allow the <code>geodir<\/code> routes in that plugin&#8217;s settings.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. Check caching and script optimisation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Plugins that combine, delay or defer JavaScript can stop the map scripts running, often only for logged-out visitors. Clear the cache and turn off JavaScript defer or delay for a test. See <a href=\"https:\/\/wpgeodirectory.com\/documentation\/article\/troubleshooting\/maps-have-stopped-working-on-my-site\/\">Maps have stopped working on my site<\/a> and <a href=\"https:\/\/wpgeodirectory.com\/documentation\/article\/caching\/geodirectory-and-caching-compatibility\/\">GeoDirectory and caching compatibility<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. Check for old add-ons<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Add-ons made for GeoDirectory v1, such as GD Booster, don&#8217;t work with the current version and can break scripts. Deactivate any that are still installed.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>When GeoDirectory maps stay blank or keep loading, the cause is nearly always the Google API key, the Google Cloud account behind it, or something on the site blocking the map scripts or the WordPress REST API. Work through these checks in order. 1. Look at the browser console Open the page with the broken [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"article\/tags":[],"article\/categories":[211,437],"class_list":["post-2348","gd_place","type-gd_place","status-publish","hentry","gd_placecategory-tips-tricks-more","gd_placecategory-troubleshooting"],"_links":{"self":[{"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/article\/2348","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/article"}],"about":[{"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/types\/gd_place"}],"author":[{"embeddable":true,"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/comments?post=2348"}],"version-history":[{"count":1,"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/article\/2348\/revisions"}],"predecessor-version":[{"id":2409,"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/article\/2348\/revisions\/2409"}],"wp:attachment":[{"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/media?parent=2348"}],"wp:term":[{"taxonomy":"gd_place_tags","embeddable":true,"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/article\/tags?post=2348"},{"taxonomy":"gd_placecategory","embeddable":true,"href":"https:\/\/wpgeodirectory.com\/documentation\/wp-json\/wp\/v2\/article\/categories?post=2348"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}