Places UI Kit: A ready-to-use library that provides room for customization and low-code development. Try it out, and share yourinput on your UI Kit experience.

Error Messages

  • This page provides troubleshooting steps for Google Maps JavaScript API errors, focusing on billing and API key issues.

  • Darkened or watermarked maps usually indicate problems with your API key or billing account.

  • Ensure your billing account is enabled and your API key is valid to resolve common errors.

  • Refer to the error code table for detailed descriptions and specific solutions.

  • For most billing or key issues, solutions can be found within the Google Cloud console.

Need help from a human?
Go to the Google Maps Platform Support page.
This error messages page is for reference only. It's hereto help you troubleshoot Maps JavaScript API errors on your own. If you try to askfor help from a human by sending feedback through this page, you won't reach anyone who can help.However, if you find an issue with content on this page, please let us know with the feedback link.Thanks!

This page describes the error messages that can be returned by theMaps JavaScript API. The Maps JavaScript API writeserror and warning messages to the JavaScript console. Certain errorconditions may also occur, which result in the display of a darkenedwatermarked map.

If you are NOT the website owner, there are no steps youcan take to fix any of these errors. However, you may want to notify the siteowner if possible.

API Key and Billing Errors

Troubleshooting

Under certain circumstances, a darkened map, or 'negative' Street View image, watermarked with the text "for development purposes only",may be displayed. This behavior typically indicates issues with either an API key or billing. In order to use Google Maps Platform products,billing must be enabled on your account, and all requests must include a valid API key. For help on finding error messages, see the section onchecking errors in your browser.

The following flow will help you troubleshoot the issue.

Are you using an API key?

I'm not sure. How can I check if I am using an API key?

An API key is passed as thekey parameter in the URL that is used to load the Maps JavaScript API. Here are a few options to check if you are using an API key:

  • Use the Google Maps Platform API Checker Chrome extension. This allows you to determine if your website is properly implementing Google’s licensed Maps APIs.
  • If you are using a library or plugin to load the Maps JavaScript API, check the settings for that library and look for an API key option.
  • Checkerrors in your browser. If you see the following messages, you are not using your API key correctly:

For web developers:

  • If you have access to the source code of your application, look for the<script> tag which is used to load the Maps JavaScript API. When loading the Maps JavaScript API, substituteYOUR_API_KEY in the code below with your API key.
      <script async defer    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap">  </script>
  • Check the network traffic generated by your website in the browser. In Chrome, this can be viewed using theDevToolsNetwork tab. Here you will see the network requests made by your website. Requests made using the Maps JavaScript API will be under the pathmaps/api/js. Here you can confirm if the requests are using thekey parameter. It may be helpful to filter your network traffic bymaps/api/js when viewing theNetwork tab.

No, I am not using an API key.

To get an API key, click the button below. If you do not see a guided setup, follow the full instructions atGet Started with Google Maps Platform.
Get Started

Yes, I am using an API key.

Great! Let’s move on and check if a billing account is attached to your project.

Is a billing account attached to your project?

I'm not sure. How can I check if billing account is attached to my project?

Go to the Billing page in the Google Cloud console and select the project under which your API key was created. To confirm the key is associated with the project:

  1. Go to theCredentials section, which can be accessed from the left side bar underGoogle Maps Platform > Credentials.
  2. Check that the API key you currently use on your website is listed. If that's not the case, switch to a different project, and check the credentials there.
  3. If you cannot locate the project for your API key, you may have lost access to this project. Ask others in your organization for help. If the original project cannot be located, you should:
    1. Create a new project. This can be done by selectingNew Project from the projects list, or by selectingCreate Project via theResource Manager page.
    2. Create a new API key. This can be done on theCredentials page. Once there clickCreate credentials and then selectAPI key.

Once you have located your project in the Cloud console, check if a billing account is attached by navigating to theBilling section in the left side menu.

No, a billing account is not attached to my project.

Go to theEnable Billing page in the Cloud console and add a billing account to your project. For additional information, seeGet Started with Google Maps Platform.

Yes, a billing account is attached to my project.

Great! Let’s make sure the provided billing method is valid.

Is the provided billing method no longer valid (for example an expired credit card)?

You can add, remove, or update a payment method in the Cloud console.

Is there an exceeded self-imposed daily limit on the API?

If you have set a daily limit on any of your APIs, which is common to prevent unexpected increases, you can resolve this byincreasing your daily limit.

You can check your daily limits by going to theAPIs & Services Dashboard in the Cloud console. Once there:

  1. Select a project if prompted.
  2. Select an API from the list, then click theQuotas tab.

Does your API key have an IP addresses restriction?

API keys with anIP addresses restriction can only be used with web services that are intended for use from the server side (such as theGeocoding API and otherWeb Service APIs). Most of these web services have equivalent services within the Maps JavaScript API (for example, see theGeocoding Service). To use the Maps JavaScript API client side services, you will need to create a separate API key which can be secured with anHTTP referrers restriction (seeGet, add, and restrict an API key).

Maps JavaScript API Error Codes for Developers and Site Owners

The following tables list the possible error codes returned by theMaps JavaScript API, with a description of the cause and how you canfix the problem.For help on finding the error messages, see the section onchecking errors in your browser.

Map Loading Errors

If you encounter an error while loading the Maps JavaScript API, please see the table below to find explanations for the error codes.

Error CodeMessageDescription
NotLoadingAPIFromGoogleMapsErrorThe Maps JavaScript API must be downloaded directly from Google's servers.

The script element that loads the Maps JavaScript API is not being included correctly on your page. In order for the API to work correctly, it must be loaded directly from https://maps.googleapis.com.

See Loading the Maps JavaScript API.

TOSViolationMapErrorThis website appears to violate the Google Maps API Terms of Service. The Google Maps API has been disabled for this website.

Your application was blocked for non-compliance with the Google Maps Platform Terms of Service, following several email notifications. To appeal the block and have your implementation reviewed, please complete this form. You will receive a response via email within a few business days.

If you have a Google Maps Platform Premium Plan license, please use your Google Maps Platform Premium Plan credentials to resolve this error. See the guide toPremium Plan authentication.

UnauthorizedURLForClientIdMapErrorThis URL is not authorized to use the Google Maps Client ID provided.

The Premium Plan or Maps APIs for Work client ID included in the script load is invalid, expired, or the current address loading the Maps JavaScript API has not been added to the list of authorized URLs.

See Registering Authorized URLs.

Maps JavaScript API Error Codes

If you find an error onChrome JavaScript Console,Firefox Web Console or any other equivalent tools on your browsers, please see the table below to find explanations for the error codes.

The Maps JavaScript API returns both errors and warnings. An error indicates a severe issue which occurred while loading the Maps JavaScript API. Your page cannot load the API correctly, and the API will not work on that page. A warning is a supplemental message about the loading of the Maps JavaScript API. The warning describes the possible reasons for an error, or suggests potential issues in your code that loads the Maps JavaScript API. If you receive only warnings without any errors, the API will work correctly on that page. However, we recommend that you fix these potential issues as well.

Developer Error CodeTypeDescription
ApiNotActivatedMapErrorError

The Maps JavaScript API is not activated on your API project. You may need to enable the Maps JavaScript API under APIs in the Google Cloud console.

To activate the Maps JavaScript API for your project, click the button below.
Learn How

ApiTargetBlockedMapErrorError

This API key is not authorized to use this service or API. Please check theAPI restrictions settings of your API key in the Google Cloud console to ensure that all of the APIs and services you need to use are correctly specified in the list of enabled APIs.

See API keys in the Cloud console. For more information, seeAPI security best practices.

DeletedApiProjectMapErrorError

Your API project may have been deleted from the Cloud console. Please check the project for which you generated the API key that's included in JavaScript API loader. You can create a new API project and get a new key in the Cloud console.

To create a new project and get an API key for the project, click the button below.
Learn How

ClientBillingNotEnabledMapErrorError

You have not enabled billing on your project. You must enable Billing on the Google Cloud Project associated to this client ID,here.

BillingNotEnabledMapErrorError

You have not enabled billing on your project which is causing this error. You must enable Billing on the Google Cloud Projecthere.

Learn more

ExpiredKeyMapErrorError

The API key included in the script element that loads the API has expired or is not recognized by the system. You may receive this error after creating a new API key if you try to use the key before it is recognized by the system. Wait a few minutes and try again, or you may need to generate a new API key in the Cloud console.

To get an API key, click the button below.
Get Started

InvalidAppCheckTokenMapErrorError

The provided App Check token is invalid or expired. This error can only occur if App Check verification is in use.

See the guide toApp Check verification.

InvalidClientIdMapErrorError

The client ID included in the script element that loads the API is invalid, or expired. Please make sure you are using your client ID correctly. The client ID should start with "gme-" prefix. If you see this error even when using your client ID correctly, the client ID may have expired. Please contact your Google Account Manager.

If you do not have a Premium Plan or Maps APIs for Work license, you need to use akey parameter with your API key instead of theclient parameter.

See the guide toPremium Plan authentication.

InvalidKeyMapErrorError

The API key included in the script element that loads the API is not found. Please make sure you are using a correct API key. You can generate a new API key in the Cloud console.

To get an API key, click the button below.
Get Started

MalformedCredentialsMapErrorError

Your application uses an unsupported URI scheme. Verify that the application uses a valid URI format as defined inRFC 3986.

MissingKeyMapErrorError

The script element that loads the API is missing the required authentication parameter.

If you are using the standard Maps JavaScript API, then you must use akey parameter with a valid API key. For more information, seeGet Started with Google Maps Platform.

If you are a Premium Plan customer, then you must use either aclient parameter with your client ID, or akey parameter with a valid API key. For more information, see the guide toAPI keys and client IDs.

If you are NOT the website owner, then there are no steps that you can take to fix this error. However, you might want to notify the site owner if possible.

ProjectDeniedMapErrorError

Your request has not been completed. You may be able to find the more details about the error in the Cloud console.

SeeCloud console.

RefererDeniedMapErrorError

Your application was blocked for non-compliance with the Google Maps Platform Terms of Service, following several email notifications. To appeal the block and have your implementation reviewed, please complete this form. You will receive a response via email within a few business days.

RefererNotAllowedMapErrorError

The current URL loading the Maps JavaScript API has not been added to the list of allowed referrers. Please check the referrer settings of your API key in the Cloud console.

See the Maps JavaScript API andGet an API Key.

OverQuotaMapErrorError

The number of requests has exceeded the usage limits for the Maps JavaScript API. Your app's requests will work again at the next daily quota reset.

If you are NOT the website owner, there are no steps you can take to fix this error. However, you may want to notify the site owner if possible.

For more details, see the guide to usage limits. The page also explains how you can get higher usage limits.

ApiProjectMapErrorError

Either the provided API key or the API project with which it is associated, could not be resolved. This error may be temporary. If this error message persists you may need to get a new API key or create a new API project.

For more information, seeGet Started with Google Maps Platform.

ClientIdLooksLikeCryptoKeyWarning

You may have supplied a cryptographic key in theclient parameter. If you have a Premium Plan or Maps APIs for Work license, please specify your client ID as theclient parameter. You don't need to use your cryptographic key for the Maps JavaScript API.

See the guide toclient IDs for Premium Plan and Maps APIs for Work customers.

ClientIdLooksLikeKeyWarning

You may have supplied an API key in theclient parameter. If you have a Premium Plan or Maps APIs for Work license, please specify your client ID as theclient parameter. If you have a Google Maps Platform Premium Plan, you can use aclient parameter or akey parameter. If you don't have any licenses, you must use akey parameter, instead of aclient parameter.

See the guide toPremium Plan authentication.

InvalidChannelWarning

You may have supplied an invalidchannel parameter. The channel must be an ASCII alphanumeric string, which may include period (.), underscore (_) and hyphen (-). Please make sure that you are specifying a validchannel parameter.

See Reporting | Google Maps Platform Premium Plan.

InvalidClientIdWarning

Theclient parameter doesn't seem to contain a correct client ID. A client ID should start with "gme-".

See the guide toPremium Plan authentication.

InvalidKeyWarning

The API key included in the script element that loads the API does not look correct. Please make sure you are using a correct API key. You can generate a new API key in the Cloud console.

To get an API key, click the button below.
Get Started

InvalidVersionWarning

You may have supplied an incorrect version number in your script element. Please make sure you are using a correct version number.

See Versioning | Google Maps JavaScript API.

KeyLooksLikeClientIdWarning You may have supplied a client ID as akey parameter. If you have a Premium Plan or Maps APIs for Work license, please specify your client ID as aclient parameter instead of thekey parameter. If you have a Google Maps Platform Premium Plan, you can use aclient parameter or akey parameter. If you don't have any licenses, you must use akey parameter, instead of aclient parameter.

See the guide toPremium Plan authentication.

KeyLooksLikeCryptoKeyWarning

You may have supplied a cryptographic key or signing secret as akey parameter. If you have a Premium Plan or Maps APIs for Work license, please specify your client ID as aclient parameter, and remove the key parameter from your script element. The cryptographic key is not required for the Maps JavaScript API. If you have a Google Maps Platform Premium Plan, you can use aclient parameter or akey parameter. If you don't have any licenses, you can get an API key in the Cloud console.

See the guide toSpecifying a client ID when loading the API.

KeyLooksLikeProjectNumberWarning

You may have supplied a project number as akey parameter. Please make sure you are using a correct API key. You can generate a new API key in the Cloud console.

Learn how to get an API key.

NoApiKeysWarning

The script element that loads the API has no API key. Please make sure you include a valid API key as akey parameter. You can generate a new API key in the Cloud console.

To get an API key, click the button below to get started.
Get Started

If you are loading Maps JavaScript API from the deprecated v2 path, you will get theNoApiKeys warning, even if you specified thekey parameter. Please check thev2 to v3 upgrade guide and migrate your application to Maps JavaScript API v3.

RetiredVersionWarning

You may have supplied a retired version in your script element. Please update your application to use one of the available versions.

See Versioning | Google Maps JavaScript API.

SensorNotRequiredWarning

Thesensor parameter is no longer required for the Maps JavaScript API. It won't prevent the Maps JavaScript API from working correctly, but we recommend that you remove thesensor parameter from the script element.

SignatureNotRequiredWarning

Thesignature parameter is not required for the Maps JavaScript API. It won't prevent the Maps JavaScript API from working correctly, but it may introduce security risks. Please remove it from your script element.

SignedInNotSupportedWarning

Thesigned_in parameter has been deprecated and is not supported on the version of the Maps JavaScript API you are using. This won't prevent the Maps JavaScript API from working, but the behavior of your application may change, if you rely on signed-in features.

UrlAuthenticationCommonErrorError

An error has occurred that doesn't fit into the other categories on this page. This could be caused by a temporary problem. Please retry the request after a short delay. If that doesn't solve the problem, please review thedeveloper's guide to make sure the request has the proper format.

Checking Errors in Your Browser

The Maps JavaScript API writes error messages towindow.console. This section explains how you can check thewindow.console output in Google Chrome. If you are using any otherbrowsers, please check the developer documentation for your browser. For yourreference, this is a list of tools to checkwindow.console outputin some other browsers.

In Chrome, you can use theJavaScript Consoleto checkwindow.console output as follows.

  1. To open the Developer Tools, select the menu icon > More Tools > Developer Tools.
  2. To open the JavaScript Console, press the ESC key on your keyboard. The ESC key will toggle the JavaScript Console. If you close the console, press the ESC key again to open it.

If any errors or warnings occurred when loading theMaps JavaScript API, they appear as one or more lines in theconsole.An error or warning message has the following format:

Google Maps API error: [ERROR CODE] [Link to API document]
or
Google Maps API warning: [ERROR CODE] [Link to API document]

You can check theerror codes table above to findthe error code in the error message. You can also find the details about theerror message in the API document linked from the message.

Note: You can listen for authentication errorsprogrammatically.

Handling unsupported browsers

Ensure that the version of the browser you are using iscurrently supported by the Maps JavaScript API.

If you're developing a native Windows application that runs in a WebView, ensure that you are usingWebView2 based on Edge. Previous versions of WebView, based on Internet Explorer, are no longer supported.

If your code still isn't working

To help you get your maps code up and running, Brendan Kenny and Mano Marks point out some common mistakes and how to fix them in this video.

  • Look for typos. Remember that JavaScript is a case-sensitive language.
  • Check the basics - some of the most common problems occur with the initial map creation. Such as:
    • Confirm that you've specified thezoom andcenter properties in your map options.
    • Ensure that you have declared a div element in which the map will appear on the screen.
    • Ensure that the div element for the map has a height. By default, div elements are created with a height of 0, and are therefore invisible.
    Refer to our examples for areference implementation.
  • Use a JavaScript debugger to help identify problems, like the one available in theChrome Developer Tools. Start by looking in the JavaScript console for errors.
  • Post questions toStack Overflow. Guidelines on how to post great questions are available on theSupport page.

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-11-21 UTC.