Connect HubSpot

Create a private app with three read-only scopes, paste the token once. What Return reads from your CRM and how the token is stored.

Updated 2026-09-13

Listen to this article0:00 / 2:33

HubSpot is the connection that makes Return's commercial return dimension real: actual customers and closed-won deals instead of public-proof estimates. (New to connecting data? Start here.)

Step 1: create a private app

  1. In HubSpot, go to Settings, then Integrations, then Private Apps.
  2. Create a new private app (name it anything; "Brand Echo reader" works).
  3. On the Scopes tab, add these three read-only scopes:
    • crm.objects.contacts.read
    • crm.objects.companies.read
    • crm.objects.deals.read
  4. Create the app and copy its access token.

Step 2: paste the token

Paste it into the HubSpot card on your Connect your data page. We test it immediately and show a status pill.

Two things worth knowing about how the token is handled:

  • It's stored encrypted and never displayed again, to you or anyone else. If you lose it, rotate the token in HubSpot and paste the new one.
  • Contacts is the minimum scope. If the token is missing the companies or deals scope, the connection still works and that metric is simply left out of scoring rather than failing the whole thing. You'll get the sharpest Return read with all three.

If the connection fails

  • Token rejected: copy it again from the private app; a partial paste is the usual culprit.
  • Works but missing a scope: the error names the scope to add. Add it in the private app, then copy a new token (HubSpot rotates the token when scopes change) and paste that.

What we read once connected

Counts and totals only, never individual records: total contacts, total customers (and the customer rate), company count, and closed-won deals from the last 90 days with their total value. No contact names, no emails, no personal data, ever. The full data promise.

On your next scan of your own domain, the Return card shows the Real data pill and cites your CRM figures directly. Fair warning from the honesty rules: real numbers sometimes score lower than the public-signals estimate did. That's the point.

Revoking access

Delete the private app in HubSpot (or rotate its token). The connection dies with it.

See this on your own brand

Run a free scan and get your Brand Echo, every score explained and cited.

Measure my Brand Echo

Keep reading: Connect your data