Skip to content

Google sign-in warning“Google hasn’t verified this app”

People who sign in with Google, or connect Gmail, Drive or Calendar, see a warning that Google hasn’t verified your app, or can’t get in at all. Google shows it when the app asks for sensitive data before verification is done, or while the app is still in Testing. It’s a launch blocker, but often a fixable setting. Here’s what Google says, in its words, or hand it over at a fixed price.

Short answer

If the app only needs sign-in (name, email, profile), request just those scopes and publish the app to In production: Google treats those scopes as non-sensitive, so they don’t need verification. If it needs Gmail, Drive or Calendar data, list the exact scopes on the consent screen and submit the app for verification. Restricted scopes, such as most Gmail access, also need a security assessment. Until then, users see the warning and the app is capped at 100 new users.

Why Google shows the warning, and a related gap

  1. 01

    The app asks for sensitive or restricted scopes

    “An unverified app is an app or Apps Script that requests a sensitive or restricted OAuth scope, but hasn't gone through the Google verification process.” Google, Unverified apps

    Gmail, Drive, Calendar and similar access counts as sensitive or restricted. Until Google verifies the app for those scopes, users see the warning screen first.

  2. 02

    The code asks for scopes the consent screen doesn’t list

    “When the scopes requested in your app code differ from the scopes requested in your OAuth consent screen configuration page, your users see an "unverified app" screen.” Google, Unverified apps

    AI-written code often adds scopes the app doesn’t need. Remove any you don’t use, and make sure every scope the code requests is listed on the consent screen configuration page.

  3. 03

    The app is still in Testing

    “Projects configured with a publishing status of Testing are limited to up to 100 test users listed in the OAuth consent screen.” Google, Manage App Audience

    While the app is in Testing and asks for more than name, email and profile, only the test users you list can authorize it, and each authorization expires after seven days, which looks like a random logout. Publish the app when you launch.

  4. 04

    The 100-user cap

    “You need to go through verification before you launch a user-facing app.” Google, Unverified apps

    Google caps an app at 100 new users in total once it has shown the unverified app screen. Start verification well before launch: you can keep building while Google reviews it.

  5. 05

    Your app name and logo don’t show

    “Without verification, only your application domain will be visible to users.” Google, Manage OAuth App Branding

    Separate from the warning: without brand verification, the consent screen shows only your domain. Verify the brand on a domain you own to show your name and logo.

Checked against the vendor’s docs on : Google Cloud Help: Unverified apps; Google Cloud Help: Manage App Audience; Google Cloud Help: Manage OAuth App Branding.

Rather hand it over?

Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.

Related: Google sign-in redirect_uri_mismatch · Firebase Google sign-in popup blocked · Supabase OAuth provider disabled

Questions

More on this error

Do I need verification just for Sign in with Google?

Google’s audience page says requests for only name, email address and profile (the openid, userinfo.email and userinfo.profile scopes) are the exception to the test-user rule. Brand verification is still needed to show your app name and logo.

Can users click through the warning?

Users can usually continue through the advanced link, but some won’t, and the cap on new users still applies. Treat it as a blocker for a public launch.

Can you fix it for me?

If one bug is the whole problem, the App Fix Ticket covers it: a written diagnosis first, then the fix. If the app has more going on, the Launch Check is a written check of the whole app. Each issue found is rated critical, high, medium or low, with where it is and how it was confirmed. No issues worth fixing, no charge. If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way.

A different error?

Describe it and get a written quote

Send the error and what you were doing. You get a written scope, a fixed price and a timeline; we reply by email, usually within one business day.