> ## Documentation Index
> Fetch the complete documentation index at: https://developers.hubspot.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

---
id: 5b6d28b5-9699-4188-be07-ad7fce732e90
---

# Google Sign-In for Memberships

> Learn more about setting up memberships for private content to allow visitors to sign in with their Google account.  

export const SupportedProducts = ({marketing, sales, service, cms, data, commerce, marketingLevel, salesLevel, serviceLevel, cmsLevel, dataLevel, commerceLevel}) => {
  const translations = {
    description: "Requires one of the following products or higher.",
    productNames: {
      marketing: "Marketing Hub",
      sales: "Sales Hub",
      service: "Service Hub",
      cms: "Content Hub",
      data: "Data Hub",
      commerce: "Commerce Hub"
    },
    tiers: {
      free: "Free",
      starter: "Starter",
      professional: "Professional",
      enterprise: "Enterprise"
    }
  };
  const translateTier = tier => {
    if (!tier) return '';
    const lowerTier = tier.toLowerCase();
    return translations.tiers[lowerTier] || tier;
  };
  const products = [{
    name: marketing ? translations.productNames.marketing : '',
    level: translateTier(marketingLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/marketing-bolt.svg",
    alt: "Marketing Hub"
  }, {
    name: sales ? translations.productNames.sales : '',
    level: translateTier(salesLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/sales-star.svg",
    alt: "Sales Hub"
  }, {
    name: service ? translations.productNames.service : '',
    level: translateTier(serviceLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/service-heart.svg",
    alt: "Service Hub"
  }, {
    name: cms ? translations.productNames.cms : '',
    level: translateTier(cmsLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/content-play.svg",
    alt: "Content Hub"
  }, {
    name: data ? translations.productNames.data : '',
    level: translateTier(dataLevel),
    icon: "https://developers.hubspot.com/hubfs/Knowledge_Base_2023-24-25/subscription_key_icons/operations_icon.svg",
    alt: "Data Hub"
  }, {
    name: commerce ? translations.productNames.commerce : '',
    level: translateTier(commerceLevel),
    icon: "https://developers.hubspot.com/hubfs/Knowledge_Base/subscription_key_icons/commerce_icon.svg",
    alt: "Commerce Hub"
  }].filter(product => product.name && product.level);
  if (products.length === 0) return null;
  return <div>
      <div className="text-sm mb-2">{translations.description}</div>
      <div className={`grid ${products.length === 1 ? 'grid-cols-1' : 'grid-cols-2'} gap-1.5`}>
        {products.map((product, index) => <div key={index} style={{
    display: 'flex',
    alignItems: 'center'
  }}>
            <img src={product.icon} alt={product.alt} className="w-3.5 h-3.5 mr-1.5 mt-2.5 mb-2.5 flex-shrink-0 align-middle" />
            <span className="font-medium mr-1 text-sm">{product.name} -</span>
            <span className="text-sm">{product.level}</span>
          </div>)}
      </div>
    </div>;
};

<Accordion title="Supported products" defaultOpen="true" icon="cubes">
  <SupportedProducts cms={true} cmsLevel="professional" />
</Accordion>

You can allow members to access your private content using Google Authentication. You will need to [create a Google Cloud Console account](https://console.cloud.google.com/) to link Google Authentication with your HubSpot account.

## Create a project

In your Google Cloud Console account, you can create a project to manage sign-ins to your private content in HubSpot.

* Navigate to [Google Cloud Console](https://console.cloud.google.com/).
* In the top left, click **Select a project**.
* In the dialog box, click **New project** in the top right.
* Enter a **name** and **location** for your project, then click **Create**.

## Add app information

Once you've set up your project, you can add information from your HubSpot account to allow it to process private content sign-in data.

* Navigate to [Google Cloud Console](https://console.cloud.google.com/).
* In the top left, click **Select a project**.
* In the dialog box, select the **project** you just created.
* In the top left, click the **navigation menu**, then select **API & Services > Oauth consent screen**.

<Frame>
  <img src="https://www.hubspot.com/hubfs/Knowledge_Base_2021/select-oauth-consent-screen.png" alt="select-oauth-consent-screen" />
</Frame>

* In the *User Type* section, select the **type of user** who will be accessing your private content.
  * **Internal**: only employees of your organization will be access your content.
  * **External**: other visitors will be accessing your content.
* If you select *External*, you will be prompted to enter an **app name**, **support email** for members to contact you, and **developer contact information** for Google to contact you.
* In the *Scopes* section, select the following scopes:
  * .../auth/[userinfo.email](http://userinfo.email/)
  * .../auth/userinfo.profile
  * openid
* Publish your app.

## Create credentials

Once you've set up your project, you will need to link the project to your HubSpot private content.

* Navigate to [Google Cloud Console](https://console.cloud.google.com/).
* In the top left, click the **navigation menu**, then select **API & Services > Credentials**.
* At the top of the page, click **Create credentials**.

\*\*

<Frame>
  <img src="https://www.hubspot.com/hubfs/Knowledge_Base_2023_2024/create-credentials.png" alt="create-credentials" />
</Frame>

\*\*

* Select **OAuth client ID**.
* Select **web application**, then enter a **name** for your application.
* In a separate tab, locate your credentials in HubSpot:
  * In your HubSpot account, click the **settings icon** in the top navigation bar.
  * In the left sidebar menu, navigate to **Content > Private Content**.
  * In the *Sign-in Options* section, click **Set up social sign-on**.
  * In the right panel, click **Copy** next to the redirect URI.
* In Google Cloud Console, paste the **redirect URI** into the *Authorized redirect URIs* section.
* Click **Create**.
* Copy the **Client ID** and **Client Secret** fields from Google Cloud Console.
* In HubSpot, paste this information into the **Client ID** and **Client Secret** fields in your social sign-on settings.

<Frame>
  <img src="https://www.hubspot.com/hubfs/Knowledge_Base_2021/set-up-google-social-sign-on-in-hubspot.png" alt="set-up-google-social-sign-on-in-hubspot" />
</Frame>

* In HubSpot, click **Verify**.
* Repeat this process for each separate domain in your HubSpot account. To access a different domain's redirect URI, click the **default domain name** dropdown menu in your HubSpot social sign-on settings and select a different **domain**.

<Frame>
  <img src="https://www.hubspot.com/hubfs/Knowledge_Base_2021/set-up-social-sign-on-for-google.png" alt="set-up-social-sign-on-for-google" />
</Frame>
