Sales Enablement

Clay HubSpot Integration: What It Writes, Which Plan Turns It On, and the Step After the Sync That Nobody Owns

Clay's HubSpot integration imports any object or list, enriches it across the waterfall, and writes back by ID with a lookup in front. What each of its eleven entries does, the OAuth scopes it asks for, the Growth-plan gate, and the moment after the sync where reps drop out.

The Clay HubSpot integration is Clay's native HubSpot connector: a Source that imports any HubSpot object or list into a Clay table, and Actions that look up, create, update, associate, and enroll records, on Clay's Growth plan and above, through your own HubSpot account.

The HubSpot admin has a list called “Contacts, no phone,” and no rep has dialed a row of it because there is nothing to dial. RevOps connects Clay, points a table at the list, runs the waterfall, and the next morning the list is shorter. That is the Clay HubSpot integration working as designed. What the admin cannot see, and what the sales leader will ask about in the pipeline review, is whether any of the newly complete records got a call.

The Clay HubSpot integration is Clay’s native connector to HubSpot: a Source that imports any HubSpot object or list into a Clay table, and Actions that look up, create, update, and associate records, find owners, and enroll contacts in sequences, on Clay’s Growth plan and above, through the customer’s own HubSpot account (clay.com/integrations/data-provider/hubspot, opened September 25, 2026). Clay’s copy says the GTM engineer builds and “any rep” runs, and the HubSpot sync is how the build reaches the rep: the record they already have open. We run on our customers’ own Clay accounts and read these docs as customers do. The integration does the delivery well. The step after delivery has no owner, and that step decides whether the Clay bill turns into pipeline.

What does the Clay HubSpot integration do, entry by entry?

Clay’s directory lists eleven entries under HubSpot, each tagged “Bring Your Own Account Required”: Clay reads and writes your portal as the user who connected it. Take the entries in the order a sourced contact meets them, and picture a conference registration desk, because that is what the integration is: the desk where a new arrival is checked against the list, given a badge, pinned with the company ribbon, and handed an agenda. The reps are out on the show floor. They never stand behind the desk.

The Clay HubSpot integration drawn as a conference registration desk: an arriving contact is checked against the guest list (look up object by HubSpot Object ID), given a badge (create object), corrected if needed (update object with blank values ignored), pinned with a company ribbon (create association), assigned a host (find owner), and handed an agenda (enroll in a sequence); the reps stand on the show floor, never behind the desk
Look up is the guest list, create is the badge, update is the correction, association is the company ribbon, find owner is the host, enroll is the agenda. Source: Clay University, HubSpot integration, September 25, 2026.
  • Import objects (the Source). Pulls any HubSpot object type into a Clay table; the list “is pulled from your own portal, so it includes your custom objects as well as the standard ones.” An optional list filter narrows the pull; a switch includes HubSpot’s calculated read-only properties.
  • Look up object. Checks the guest list. Filters on any properties you pick, “HubSpot Object ID sits at the top of the list, since matching on the record ID is the most precise option available”; AND or OR across filters; returns 10 by default, 200 at most.
  • Create object. Prints the badge. Once you pick the object type, “the writable properties for that type appear below, ready to map to your Clay columns,” pipelines and stages included for deals.
  • Update object. Corrects a badge by its Object ID. “Ignore blank values” is on by default, so a lookup that returned nothing leaves the HubSpot value alone.
  • Create association and Get associated objects. Pins the company ribbon: contact to company, lead to contact, with the association type depending on the two object types.
  • Find owner. By owner ID or email; the docs say the ID “is the more reliable of the two,” because an email column coming out of an enrichment often is not a HubSpot owner at all.
  • Enroll a contact in a sequence, and Get enrollment status. Hands over the agenda, from a dropdown of your sequences, with a sender email, and only if the sequence scopes were switched on at connection.

The desk picture has an edge. A registration desk handles one arrival at a time; a Clay table handles a thousand rows in a run, and “Run settings” let the builder set a table to auto-update and to run an action “Only run if” a condition holds (Clay University, HubSpot integration, opened September 25, 2026). That conditional is where the dedupe rule lives: look up, and only create if the lookup came back empty.

Which plan and permissions does the Clay to HubSpot sync need?

Two gates sit in front of the desk, and both are easy to miss on a first read of Clay’s site.

The first is the plan. In the compare table on Clay’s pricing page, the row labelled CRM integrations reads “Not included” on Free, “Not included” on Launch, and “Included” on Growth and Enterprise. The Growth card lists “Auto-sync & enrich CRM” first under “Everything in Launch, plus,” and starts at $495 a month, or $446 on annual billing (clay.com/pricing, opened September 25, 2026). A team on Launch at $185 has the email-campaign integrations without the HubSpot connector. The Clay pricing page covers the rest of the meter.

The second gate is permissions, in three tiers. Seven scopes are required and cannot be disabled, all read: lists, contacts, companies, leads, owners, and the contact and company schemas. A second tier is on by default but can be switched off: write access to contacts, companies, leads, and deals, plus “crm.export” for bulk Audiences import. A third tier is off by default: the three custom-object scopes and the two sequence scopes. The custom-object scopes carry a trap the docs name plainly: they “are available on HubSpot Enterprise portals. On other HubSpot plans they can’t be granted, and authorization stops there rather than continuing without them.” So they ship off, and a Professional-tier portal that switches them on before connecting gets an error instead of a connection.

The three tiers of HubSpot OAuth scopes the Clay HubSpot integration asks for: seven required read scopes that cannot be disabled; write scopes for contacts, companies, leads, deals, and CRM export that are on by default but can be switched off; and five scopes off by default, the three custom-object scopes that only HubSpot Enterprise can grant and the two sequence scopes needed to enroll contacts
Three tiers of keys. Required (read only, cannot be disabled), default-on (write, can be switched off), and default-off (custom objects, Enterprise-only; sequences, needed to enroll). Source: Clay University, HubSpot integration, September 25, 2026.

Read the tiers as a sales leader and one line stands out: the write scopes are on by default. Whoever connects Clay to HubSpot hands a table the power to create and change contacts, companies, leads, and deals as themselves. That is the right default for a builder, and a reason to connect as a named integration user rather than a rep’s login, the same argument the HubSpot implementation guide makes about any connected app.

How does the HubSpot Clay integration run in both directions?

The connector is one set of actions, and the two directions are two orders of running them.

HubSpot to Clay is enrichment, and it starts from the list the admin already has. Import the object, filter to “Contacts, no phone,” add the waterfall as an enrichment, and update by Object ID. Two defaults protect the record on the way back. “Ignore blank values” means a provider that found nothing does not blank the field. “Keep subdomains in Company domain,” off by default, reduces shop.example.com to example.com before it is written, which matters because domain is the key HubSpot matches companies on. Clay’s CRM enrichment page describes the automated version, “Trigger enrichments automatically when new leads enter your CRM,” and that is the “Auto-sync & enrich CRM” line on the Growth card.

Clay to HubSpot is the sourced contact, and it starts from a table that found someone. The order is look up, branch, create, associate, owner, enroll. The lookup on Object ID is the dedupe; where there is no ID yet, the builder filters on email, and the docs’ warning about owner emails applies to contact emails too: a column out of an enrichment is a guess until HubSpot confirms it. Clay’s own MCP page describes the same order, “Check against your CRM for duplicates, keep only net-new and validated contacts, then draft outreach and push straight to your sequencer and CRM” (clay.com/mcp), and the sequencer step here is HubSpot’s own, through the enroll action.

The two directions of the Clay HubSpot sync: HubSpot to Clay imports a list such as contacts with no phone, runs the waterfall across 200+ vendors, and updates each record by Object ID with blanks ignored; Clay to HubSpot looks the person up by Object ID or email, branches on the result with a conditional run, then creates the contact, associates it to the company, finds the owner, and enrolls it in a sequence if the scopes are on
HubSpot to Clay: import the list, run the waterfall across 200+ vendors, update by ID with blanks ignored. Clay to HubSpot: look up, branch on the result, then create, associate, owner, enroll. Source: Clay University docs and clay.com, September 25, 2026.

One more mechanic matters for a sales team: the sequence actions need a contact ID, a sequence, and a sender email, so the enrollment runs as a named HubSpot user. The rep on the sender line sees the sequence in their HubSpot sequences queue and its replies in their inbox, which is the one place in this loop where a rep notices that something was synced.

Where does the rep fall out of the Clay HubSpot sync?

Everywhere else. The Bridge Group’s 2025 SDR report, 351 B2B companies, puts the median rep’s day at 112 activities: 44 phone, 41 email, 19 LinkedIn, 8 text or other (Bridge Group, 2025). For a HubSpot team those activities happen on the contact record, in Gmail with the HubSpot Gmail integration logging the thread, and in the notification HubSpot email tracking fires when a prospect opens. Not one of the 112 is “open Clay.” The integration delivers to the right place. It does not announce itself when it gets there.

Two of our convictions explain why that gap is the sales leader’s problem rather than RevOps’s. The answer has to reach the rep in the moment of the work; any detour to get it is a failure. And enablement that asks reps to add a tab or a login has already lost. A HubSpot record with a fresh mobile number honors both, and still nothing happens, because the number arrived without an expectation attached. The rep did not source it, was not told it is new, and has a page of other records that look identical.

Our field data measures the gap. Across 198 sales leaders, 89% have a defined process and 36% see reps run it (The State of Sales Enablement). Teams whose reps get guidance in the flow of work report 49% quota attainment against 15% for teams whose reps have to go somewhere else for it, and teams that inspect deals against the process consistently hit quota at 6.3x the rate of teams that rarely do.

You might say a HubSpot workflow closes this: property changes, task created, done. Fair, and it is the first thing a good admin builds. It creates the task. It cannot tell the manager, a month later, how many of the contacts Clay sourced were worked, advanced, and closed against the number the manager expected, and it says nothing about the rep who is on a LinkedIn profile right now and wants the number before the record exists at all.

What closes the loop after the Clay HubSpot sync?

Reason it through. The GTM engineer built the table. The integration puts its output on the HubSpot record, and it can also pull a record out to be completed. So the HubSpot record is both an entry point and a destination, and the rep-side layer has to treat it as both. Entry point: a rep on a contact with a missing phone, or on a LinkedIn profile, or on a company website, runs the GTM engineer’s table from there, one click, no Clay login, field mapping set once by Ops, the CRM status visible before they add a duplicate or step on a teammate. Destination: the sourced contact lands in HubSpot as the first step of a process, the next expected action reaches the rep on the record, and the manager sees sourced, worked, closed, with “worked” and “closed” defined by the customer, against the expectation the manager set.

That second half is where Supered sits. No database on purpose, the customer’s own Clay account, and the surfaces a HubSpot rep already works in, the record, Gmail, LinkedIn, the same ground the HubSpot Chrome extension guide maps. Clay governs the data. Supered governs the motion.

The HubSpot record as both entry point and destination in the rep loop: a rep starts on the HubSpot record, a LinkedIn profile, or a company site; one click runs the GTM engineer's Clay table with the waterfall; the contact returns to the HubSpot record; the next expected action reaches the rep there; the manager sees sourced, worked, closed against the expectation set, with worked and closed defined by the customer
The record is where the loop starts and where it lands: one click out to the GTM engineer’s table, the contact back, the next expected action on the record, and sourced, worked, closed read against the expectation set. Conceptual, not measured data.

What we recommend

Three ways to run this, for a HubSpot team with a Clay account on Growth.

  • The sync alone. Connect, enrich the no-phone list, write back by ID. The list gets shorter. Whether the numbers were dialed stays unknown.
  • The sync plus a workflow. A task on each updated record. The manager gets a task-completion count, which records boxes checked while the buyer’s position stays unrecorded.
  • The sync plus a rep-side front end and a standard. The rep runs the table from the record or the profile, the contact enters a process with an expectation attached, and the manager reads sourced, worked, closed against it.

We recommend the third, on the evidence above: Clay says one builds and any rep runs; the Bridge Group says the running happens on the record and in the inbox; our data says in-flow guidance runs at 49% against 15% and consistent inspection at 6.3x. The sync fixes delivery. Only the standard touches the second number. The Clay integrations hub sets this connector beside the rest of the directory, and the Clay Salesforce integration page does the same walk for a Salesforce org, where the duplicate-rule switch and the picklists change the story.

Frequently asked questions

What does the Clay HubSpot integration do?+
It moves records both ways between HubSpot and a Clay table. Clay's listing (clay.com/integrations, September 25, 2026) shows eleven entries: one Source that imports objects from your HubSpot account, and Actions that create an object, look one up, update it, create and retrieve associations, find an owner by ID or email, enroll a contact in a sequence, and check enrollment status. The object types and writable properties are pulled from your own portal, so custom objects and custom properties appear if your plan allows them. Each action is marked Bring Your Own Account Required.
Which Clay plan do you need for the HubSpot integration?+
Growth or Enterprise. Clay's pricing compare table (clay.com/pricing, September 25, 2026) marks CRM integrations as not included on Free and Launch and included on Growth and Enterprise; the Growth card lists Auto-sync and enrich CRM first under Everything in Launch, plus. Growth starts at $495 a month, $446 on annual billing.
How does Clay avoid creating duplicate contacts in HubSpot?+
By looking up before creating. Clay's HubSpot docs ship a Look up object action that filters on any property you choose, with the HubSpot Object ID at the top of the list because matching on the record ID is the most precise option; two or more filters combine with AND by default or OR. The builder runs the lookup, branches on the result with a conditional run, and only then creates. Clay does not dedupe on its own; the lookup is the tool and the builder writes the rule.
What HubSpot permissions does Clay ask for?+
Seven required read scopes (lists, contacts, companies, leads, owners, and the contact and company schemas), a set of write scopes that are on by default but can be switched off (contacts, companies, leads, deals, plus CRM export for Audiences), and five scopes that are off by default: the three custom-object scopes and the two sequence scopes. The custom-object scopes can only be granted on HubSpot Enterprise; on other HubSpot plans, turning them on makes the authorization fail, so Clay ships them off. Source: Clay University, HubSpot integration, September 25, 2026.
Can Clay enroll a HubSpot contact in a sequence?+
Yes, with two conditions. The Enroll a contact in a sequence action needs the contact ID, the sequence, and a sender email, and it only works if the two sequence scopes (automation.sequences.read and automation.sequences.enrollments.write) were enabled when the HubSpot account was connected; they are off by default, so you reconnect with them on. A companion action checks whether the contact is already enrolled.
Do reps need to log into Clay to use the HubSpot sync?+
No. RevOps or the GTM engineer builds the table and connects HubSpot; reps see the result on the contact or company record. That is also where reps drop out of the loop, because a phone number that arrived overnight looks the same as one that was always there. Supered runs on the customer's own Clay account so a rep on the HubSpot record can run the enrichment from there with no Clay login, and the sourced contact then enters a process that is inspected, sourced, worked, closed.

Your process, running itself.

Turn the playbook into rep behavior.

Book a demo Read The State of Sales Enablement