What is the HubSpot n8n integration?
The HubSpot n8n integration is a pair of built-in n8n nodes. The HubSpot node reads and writes contacts, companies, deals, tickets, engagements and list memberships. The HubSpot Trigger starts a workflow when HubSpot records change. Together they let n8n move data between HubSpot and other systems with logic HubSpot's own workflows can't run.
n8n is a good fit when an automation needs several systems, branching logic, code or AI steps, and you want to own the workflow rather than rent it task by task. It also adds a system to maintain. This guide covers the decisions that keep an n8n and HubSpot setup reliable, based on n8n's and HubSpot's documentation as of October 2026 and on the n8n workflows we build for clients.
What can n8n's HubSpot node do?
It covers the standard CRM records: create, update, get, search and delete contacts, companies, deals and tickets, log calls, emails, meetings and tasks as engagements, and add or remove contacts from lists. It doesn't cover custom objects, line items, products, quotes or general associations. For those, n8n documents its HTTP Request node.
| HubSpot record | Node operations | Notes |
|---|---|---|
| Contacts | Create/Update, Get, Get all, Get recently created or updated, Search, Delete | Add or remove from a list with the Contact List resource |
| Companies | Create, Update, Get, Get all, Get recently created or modified, Search by domain, Delete | |
| Deals | Create, Update, Get, Get all, Get recently created or modified, Search, Delete | Can associate a company and contacts when creating |
| Tickets | Create, Update, Get, Get all, Delete | |
| Engagements | Create, Get, Get all, Delete | Calls, emails, meetings and tasks |
| Custom objects, line items, notes, associations | Not in the node | Use the HTTP Request node with the HubSpot credential |
The HTTP Request node can reuse the same HubSpot credential: choose a predefined credential type and pick HubSpot. Many workflows end up mixing both: the HubSpot node for everyday records, and HTTP Request for HubSpot's current CRM APIs, such as custom objects and associations.
How do you connect n8n to HubSpot?
Use a HubSpot service key for the HubSpot node. A super admin, or a user with Developer tools access, creates it under Development, Keys, Service Keys with only the scopes the workflow needs, and pastes it into n8n's HubSpot credential. On n8n Cloud you can connect with OAuth2 instead. Avoid the deprecated API key.
When we checked in October 2026:
- Service key: n8n's recommended option for the HubSpot node. n8n's docs still call service keys a public beta, and HubSpot's own page doesn't. Service keys can't authenticate webhooks.
- OAuth2: on n8n Cloud, choose Connect my account. Self-hosted instances need their own HubSpot app, see the trigger section below.
- Legacy private app token: still supported. HubSpot calls these legacy and recommends rotating the token every six months. Only super admins can manage them.
- API key: deprecated by HubSpot, although the option still appears in n8n.
Grant scopes per workflow, not per instance. A workflow that only updates contacts doesn't need deal or ticket access. A separate credential for each integration also makes it easy to revoke one without breaking the rest.
How do you start an n8n workflow from HubSpot?
Three ways. The HubSpot Trigger node receives HubSpot webhook events but needs a HubSpot developer app. A HubSpot workflow can call an n8n Webhook node with its Send a webhook action. Or n8n can poll HubSpot on a schedule for recently changed records. For a new setup, the workflow webhook or polling is the simpler route.
| Option | Good for | Watch out for |
|---|---|---|
| HubSpot Trigger node | Created, deleted and property-change events on contacts, companies, deals, tickets and conversations | Needs a developer account and app; one active trigger per app, because HubSpot allows one webhook URL per app |
| Workflow "Send a webhook" to an n8n Webhook node | Running n8n only for records that meet HubSpot enrollment criteria | HubSpot's knowledge base lists it with Data Hub Professional or Enterprise |
| Schedule plus "get recently modified" | Any HubSpot tier; batch jobs and syncs that can wait minutes | Not instant; uses API calls on every run |
One change to know about: n8n's setup steps for the HubSpot Trigger, and for OAuth2 on self-hosted n8n, still describe creating a HubSpot public app. HubSpot stopped allowing new legacy public apps on 23 June 2026. Apps created before then keep working. If you are setting up from scratch, test the trigger setup in your account first, or use one of the other two options.
A note on the workflow webhook tier: another HubSpot developer page still says the action needs Marketing Hub Enterprise. Check which you have before you design around it.
How should you build a HubSpot n8n workflow, in order?
Write down what the workflow does and which system owns each field, create a narrowly scoped credential, choose the trigger, then build with batching and an error workflow from the start. Test against a HubSpot sandbox or test records, document it, and watch the execution log for the first week before trusting it with live data.
- 01 DefinePurpose, field owners, volumes
- 02 CredentialService key, minimum scopes
- 03 TriggerTrigger node, webhook or schedule
- 04 BuildBatches, waits, Create/Update
- 05 ErrorsError workflow and alerts
- 06 Test and documentTest records, runbook, owner
- Define the job. One sentence on what the workflow does, which system owns each field it writes, and how many records it handles a day. Our integration governance guide covers field ownership.
- Create the credential with only the scopes this workflow needs, and name it after the workflow.
- Choose the trigger from the three options above.
- Build for reruns. Prefer the contact Create/Update operation over a plain Create, search before creating companies, and keep HubSpot record IDs in the data you pass along, so running the same input twice doesn't create duplicates.
- Add the error workflow before go-live, not after the first failure. See the error section below.
- Test and document. Run against test records, write a short runbook (what it does, who owns it, how to pause it), and check executions daily for the first week.
How do you stay inside HubSpot's API limits?
Know your limit, then pace bulk jobs. HubSpot allows a service key or private app 100 requests per 10 seconds on Free and Starter and 190 on Professional and Enterprise, with daily caps per account. Process large jobs with Loop Over Items and a Wait node, or the HTTP Request node's batching, instead of relying on retries.
| HubSpot tier | Per 10 seconds (per app) | Per day (per account) |
|---|---|---|
| Free and Starter | 100 | 250,000 |
| Professional | 190 | 625,000 |
| Enterprise | 190 | 1,000,000 |
Figures are for privately distributed apps and service keys, from HubSpot's usage guidelines in October 2026. HubSpot sells an API limit increase, and its search and associations APIs have their own stricter limits. A request over the limit returns a 429 error, which n8n shows as "the service is receiving too many requests from you".
Retry On Fail alone won't absorb a rate limit. In n8n's code, the wait between tries tops out at five seconds, shorter than HubSpot's 10-second window. For anything that touches hundreds of records, split the items into batches and add a Wait node between them.
How should n8n handle HubSpot errors?
Give every production workflow an error workflow that starts with n8n's Error Trigger and alerts a named person, for example in Slack or by email. Turn on Retry On Fail for brief failures, send record-level failures to an error output instead of stopping the run, and keep execution history long enough to investigate.
- Error workflow: set it in each workflow's settings. It receives the failed workflow's name, the failing node and the error message. n8n notes you can't test error workflows by running workflows manually.
- Retries: Retry On Fail with a few tries covers brief outages, but not sustained rate limiting (see above).
- Error output: set a node's On Error to "Continue (using error output)" so one bad record goes to a review branch while the rest of the batch completes.
- History: self-hosted n8n prunes executions older than 14 days by default. On n8n Cloud, retention depends on the plan. If a sync matters, log failures somewhere permanent, such as a HubSpot property or a sheet the owner checks.
Is an n8n workflow already failing quietly? Bring the execution log to a free 30-minute call and we will show you where it breaks and how to catch it next time.
Whose n8n account should your HubSpot workflows run in?
Yours. Run the workflows in an n8n Cloud account or self-hosted instance the business owns, with the HubSpot credentials created by your own super admin, so nothing depends on one consultant. n8n's license lets a partner build and maintain workflows for clients, but not host n8n as a service for clients to build in.
Self-hosted n8n is licensed under the Sustainable Use License, a fair-code license for internal business use. Its FAQ allows building automations for clients and charging for setup and maintenance, and it rules out offering n8n as a hosted product where clients build their own workflows. Paid plans add features such as SSO, environments and Git version control. Read the license FAQ before you decide where to host. This guide is not legal advice.
Whichever you choose, document each workflow the way you would document a HubSpot workflow: purpose, owner, trigger, the fields it writes, and how to pause it. That is our standard: documented, not black-boxed.
When should you use n8n instead of HubSpot workflows?
Use HubSpot's own workflows when the logic lives entirely inside HubSpot, such as routing, lifecycle updates, tasks and internal notifications. Use n8n when an automation spans several systems, needs loops, code or AI steps, or would cost too much per task elsewhere. Use a native integration when one exists and does the job.
Keeping logic in HubSpot where possible means your admin can see and change it without another tool. Our HubSpot workflow examples cover what to build natively first. For two-way syncs, such as HubSpot with Salesforce, a native connector with clear field ownership usually beats a hand-built flow: see the HubSpot Salesforce integration guide.
HubSpot n8n checklist
Key takeaway: Connecting n8n to HubSpot is quick. What keeps it working is a narrowly scoped service key, a trigger that still works under HubSpot's new app rules, batching that respects API limits, and an error workflow someone actually reads.
Frequently asked questions
Does n8n have a HubSpot integration?
Yes. n8n has a built-in HubSpot node for contacts, companies, deals, tickets, engagements and contact lists, and a HubSpot Trigger node that starts workflows from HubSpot webhook events. For anything the node does not cover, such as custom objects, n8n documents using its HTTP Request node with the same HubSpot credential.
How do you authenticate n8n with HubSpot?
n8n recommends a HubSpot service key for the HubSpot node, created by a super admin or a user with Developer tools access. n8n Cloud users can also connect with OAuth2. Legacy private app tokens still work, the old API key is deprecated, and the HubSpot Trigger needs a developer API key from a HubSpot developer account.
Can a HubSpot workflow trigger an n8n workflow?
Yes. The Send a webhook action in HubSpot workflows can call an n8n Webhook node, so HubSpot's enrollment rules decide when n8n runs. HubSpot's knowledge base lists the action with Data Hub Professional or Enterprise when we checked in October 2026. Without it, n8n can poll HubSpot on a schedule for recently changed records.
What are HubSpot's API limits for n8n?
For a service key or private app, HubSpot's usage guidelines listed 100 requests per 10 seconds on Free and Starter and 190 on Professional and Enterprise when we checked in October 2026, with daily limits of 250,000 to 1,000,000 requests per account. Going over returns a 429 error, so bulk n8n jobs need batching and waits.
Can an agency build n8n workflows for our HubSpot?
Yes. n8n's license FAQ allows building automations for clients and charging for setup and maintenance. It does not allow hosting n8n as a service where clients build their own workflows. We recommend running it in the client's own n8n account, so the workflows stay with the business.
Sources
HubSpot documentation behind the feature and tier notes above, checked October 2026. HubSpot changes features and tiers often, so check your own portal too.
- HubSpot node (n8n docs)
- HubSpot Trigger node (n8n docs)
- HubSpot credentials (n8n docs)
- Handle API rate limits (n8n docs)
- Error handling (n8n docs)
- Sustainable Use License FAQ (n8n docs)
- Account service keys (HubSpot developer docs)
- Legacy apps overview (HubSpot developer docs)
- API usage guidelines and limits (HubSpot developer docs)
- Use webhooks with HubSpot workflows

