HubSpot integration tools compared: the HubSpot integration API, data integration and ETL software
Twelve ways to connect HubSpot to the rest of your stack, lined up by who owns each tool, how it bills, and who it is wrong for. Two things decide this purchase more than any feature list: the HubSpot API rate limits your tier actually gets, and what the native Data Sync will and will not do. Both are tabled below, read from HubSpot documentation on 20 August 2026.
Field mapping auto-plugged · tap a port to rewire
Plug a source port into
Transform on this cable
JSON in
JSON out
5 sample records ready
HubSpot documentation read 20 August 2026 · Last updated August 2026
Which HubSpot integration tool should you use?
Match the tool to the job, not to the logo. If the goal is HubSpot data in a warehouse for reporting, that is ELT and Fivetran, Airbyte or Adapters do it. If the goal is keeping HubSpot and another business application in agreement, check HubSpot Data Sync first because it is included and it may already cover you, then look at Celigo, Workato or Boomi. If the goal is pushing modeled scores from the warehouse onto HubSpot properties, that is reverse ETL and Hightouch or Adapters do it. Zapier and Make win for lightweight automation a marketer owns. And for a meaningful number of teams the right answer is a private app and a few hundred lines of code, because the HubSpot APIs are well documented and batch endpoints do most of the heavy lifting.
The correction worth making early: most published comparisons of this category rank tools on connector counts and never mention the two constraints that actually decide the project. Your HubSpot tier sets a hard daily call allocation shared across every private app in the account, and the CRM Search API has its own separate ceiling of 5 requests per second. A tool that searches per record will crawl no matter how good its interface is. For the wider category outside HubSpot, start with best data integration tools.
HubSpot integration tools compared
Billing units rather than price tags, because most of this category is quote-based or consumption-metered and any number we print goes stale. The one flat published figure below is ours. Verify current pricing with each vendor before you sign anything.
| Tool | Owner | Approach | Best for | Pricing model | Watch out for |
|---|---|---|---|---|---|
| Data Sync | HubSpot | First-party two-way sync between HubSpot and a list of supported apps | Teams syncing HubSpot with another CRM, an accounting tool or a support desk | Included with some tiers, warehouse sync requires Data Hub Enterprise | The supported app list is the whole product. If yours is missing, there is no workaround |
| Snowflake sync | HubSpot | Scheduled one-way load from Snowflake into HubSpot objects | Enterprise accounts pushing modeled warehouse data onto CRM records | Requires Data Hub Enterprise and Smart CRM Enterprise, credits apply | 30M records per run, 10 GB per table, 200 columns, no filtering, not real time |
| App Marketplace | HubSpot | A large catalog of apps built by HubSpot and by third-party vendors | Standard tool-to-tool connections that somebody has already built | Set by each app vendor, from free to a separate subscription | Listing quality varies enormously. A listing is not a maintenance commitment |
| Private apps | HubSpot | Your own code against the HubSpot REST APIs with a scoped access token | Engineering teams with a specific workflow and capacity to maintain it | No HubSpot charge. You pay in engineering time | You own the retries, the backoff on 429s, the error log and the 2 AM page |
| Workato | Independent | Enterprise automation with a large recipe library | Mid-market and enterprise ops teams automating across many applications | Annual contract priced on workspaces and recipes | Entry commitments start well above typical departmental budgets |
| Celigo | Independent | Prebuilt integration apps, strongest around NetSuite and ecommerce | HubSpot to ERP quote-to-cash in particular | Subscription by tier and endpoint count | Value is concentrated in the prebuilt apps, less so in custom work |
| Boomi | Independent | Established low-code iPaaS with strong ERP coverage | Connecting HubSpot to SAP, NetSuite or on-premises systems | Per connection subscription, plus a pay-as-you-go option billed per message | Connection-based pricing climbs quickly as the endpoint count grows |
| Zapier | Independent | Trigger and action automation across thousands of apps | Lightweight record-level automation owned by a marketer rather than an engineer | Tiered by tasks executed per month | Task metering makes high-volume HubSpot syncs expensive and slow |
| Make | Independent | Visual scenario builder with branching and iterators | Multi-step workflows that need conditional logic without code | Tiered by operations consumed per month | An operation is counted per module run, so loops get expensive quietly |
| Fivetran | Independent | Managed ELT into a warehouse with schema drift handling | Analytics teams loading HubSpot objects into Snowflake or BigQuery | Monthly active rows for connections, model runs for transformations | One direction only. It fills the warehouse, it does not write back |
| Hightouch | Independent | Reverse ETL, warehouse back into HubSpot | Teams pushing modeled scores and segments onto HubSpot records | Tiered by destinations and synced records | The opposite direction to Fivetran. Most teams eventually want both |
| Adapters | Independent | Scheduled two-way syncs with visual field mapping and no-code transforms | Teams that need a handful of dependable HubSpot syncs on a predictable bill | Flat monthly, $49 to $399. No row meter, no task counter, no per-connector fee | Not the right tool for forty obscure connectors or distributed Spark jobs |
The column a table cannot show you is connector depth. Two vendors will both list HubSpot and only one will replicate the custom object your revenue reporting actually depends on, or handle the association between a deal and the three contacts attached to it. During the trial, sync the exact objects you need, including the custom ones and the associations, and read what landed rather than trusting the logo on the connector page. If you are evaluating against a specific vendor, we keep honest write-ups of Workato, Celigo, Zapier and Fivetran.
What HubSpot already gives you before you buy anything
Six integration mechanisms ship with the platform. Knowing which one fits changes the shortlist, because a vendor whose connector searches the CRM once per record is spending your allocation at 5 requests per second on a job that a batch read and a webhook would do in a fraction of the calls.
| Mechanism | What it does | Reach for it when | What it costs you |
|---|---|---|---|
| CRM object APIs | Read and write contacts, companies, deals, tickets and custom objects | Anything record-level, in either direction | One call per request against the shared daily allocation |
| Batch endpoints | Create, read, update or archive up to 100 records in one call | Any backfill or bulk update. Effectively always, above a handful of records | One call per 100 records, the cheapest path against the allocation |
| CRM Search API | Query records by property filters and sort order | You genuinely need a filtered lookup and cannot page a list endpoint | 5 requests per second, capped at 10,000 results per query |
| Webhooks | Push notifications when records are created, changed or deleted | You want to react to changes instead of polling for them | Free against the API allocation. Up to 1,000 subscriptions per app |
| Private apps | Scoped access token for one account, no OAuth dance | Internal integrations you are not distributing to other HubSpot accounts | Included. Up to 20 private apps per account |
| Data Sync | First-party two-way sync with a fixed list of supported applications | Your other system is on the supported list and the default mapping fits | Bundled by tier, with warehouse sync gated to Data Hub Enterprise |
The honest limit of the native route is not capability, it is ownership. A private app can do almost anything the APIs expose, but it does not ship with retries you did not write, exponential backoff on 429 responses, a per-record error log somebody can read, or an alert that reaches a human. That gap is what you are buying when you buy a tool, and it is worth being explicit about it rather than discovering it during the first failed backfill. The same trade is covered generally in build versus buy for integrations.
HubSpot API rate limits every integration has to live inside
Daily allocations are shared across every private app in the account, not allocated per tool. Read from the HubSpot developer usage guidelines and the API limits changelog on 20 August 2026. If you take one table from this page, take this one.
| Limit | Value | Why it matters |
|---|---|---|
| Private app burst, Free and Starter | 100 requests per 10 seconds, per app | Two apps polling at once will trip this long before the daily cap matters |
| Private app burst, Professional and Enterprise | 190 requests per 10 seconds, per app | Raised from 150. The burst ceiling, not the daily one, is what causes 429s |
| Daily calls, Free and Starter | 250,000 per account | Shared across every private app in the account, not allocated per app |
| Daily calls, Professional | 625,000 per account | The changelog announcing the increase quotes 650,000, so confirm yours in-app |
| Daily calls, Enterprise | 1,000,000 per account | Raised from 500,000. Generous until something polls the Search API in a loop |
| API Limit Increase add-on | 250 per 10 seconds, 1,000,000 more per day | Purchasable twice. The burst increase does not stack, the daily allocation does |
| Public OAuth app burst | 110 requests per 10 seconds, per installing account | The add-on does not apply to publicly distributed apps at all |
| CRM Search API rate | 5 requests per second | A separate and much stricter ceiling. The most common cause of a stalled HubSpot sync |
| CRM Search API page size | 200 records per response | Raised from 100. Halves the call count on any paginated search |
| CRM Search API result cap | 10,000 total results per query | Paging beyond it returns a 400. Filter into narrower slices instead of paging further |
| Batch endpoints | 100 records per request | Create, read, update and archive. Using them cuts call volume by up to 100 times |
| Private apps per account | 20 | Rarely a real constraint, but worth knowing before you plan one app per integration |
| Webhook subscriptions per app | 1,000 | Webhooks are how you stop polling, and polling is what spends the allocation |
| Custom event definitions | 500 per account, 30,000,000 completions per month | The send endpoint accepts 1,250 requests per second and 500 records per batch |
| Timeline event size | 1 MB per instance, 500 properties per event type | 750 event types per public app, and 510 KB per individual property |
One caveat we would rather flag than paper over. HubSpot raised these limits and the changelog announcing the change quotes 650,000 daily calls for Professional, while the current usage guidelines table quotes 625,000. We print the documentation table figure above. Check the number your own account reports before you size a backfill against it, because a difference of 25,000 calls is the difference between a load finishing overnight and stopping at 4 AM.
What the native HubSpot Snowflake sync actually does, and where it stops
HubSpot ships its own warehouse sync, and if it fits your case it is the cheapest option on this page because you are already paying for it. It is also gated behind Enterprise tiers, runs one direction only, and carries hard ceilings that no vendor comparison mentions. Read from HubSpot knowledge base documentation on 20 August 2026.
| Detail | What applies |
|---|---|
| Required subscription | Data Hub Enterprise, plus Smart CRM Enterprise for the direct Snowflake sync. HubSpot credits apply to parts of the newer experience |
| Direction | One way. Data syncs from Snowflake into HubSpot, not the other way |
| Freshness | Scheduled. Syncs do not update in real time, and the interval is chosen at setup |
| Records per sync run | 30,000,000 maximum |
| Table or view size | 10 GB maximum |
| Columns per table or view | 200 maximum |
| Objects supported | Contacts, companies, deals and custom objects. Associations are defined during mapping |
| Filtering | Not supported during the sync. Build a Snowflake view with the filter applied first |
| Change detection | Each run evaluates all source data, then updates only the records that changed |
| Legacy sync sunset | The legacy HubSpot Snowflake data sync is being sunset on 28 September 2026. Existing syncs run until then |
Read the direction row twice, because it is the one that catches people. The native Snowflake sync loads warehouse data into HubSpot. It does not extract HubSpot into the warehouse, which is the thing most analytics teams are actually asking for. For that direction you need a connector or a private app, and the route is covered in HubSpot to Snowflake.
Six numbers worth knowing before the first demo
190
Requests per 10 seconds on Professional and Enterprise
Per private app, raised from 150. Free and Starter accounts get 100. This burst ceiling, not the daily allocation, is what returns 429 errors on a real integration. Source: HubSpot developer usage guidelines, read 20 August 2026.
5 per sec
CRM Search API rate limit
A separate and far stricter ceiling than the general API. If your sync feels slow for no visible reason, something is almost certainly searching in a loop instead of paging a list endpoint or listening to a webhook.
10,000
Maximum results any Search API query can return
Paging past 10,000 returns a 400 error rather than more records. The fix is narrower filters, usually a date window, not deeper pagination. This surprises teams during the first full backfill.
100
Records per batch request
Create, read, update and archive endpoints all accept 100 records per call. A tool that loops single requests burns up to 100 times the allocation to do identical work, which is worth asking about on a demo.
28 Sep 2026
Legacy HubSpot Snowflake data sync sunset
HubSpot documentation states the legacy Snowflake data sync becomes unavailable after that date, with existing syncs functioning until then. If you built on it, the migration is not optional and the date is close.
$49/mo
Adapters entry price, flat
No task meter, no monthly active rows, no per-connector charge. The bill is the same whether the sync moves 400 HubSpot contacts or 400,000.
How to set up a HubSpot integration that survives contact with production
Step 01 / Auth
Use a private app token, not a personal login or a legacy API key
HubSpot retired API keys in favor of private app access tokens, and the difference matters beyond compliance. A private app has explicit scopes, so an integration that only reads contacts cannot quietly delete deals, and it survives the person who set it up leaving the company. Grant the narrowest scope set that works, store the token as a secret rather than in a config file, and create one app per integration so a 429 tells you which system caused it.
Step 02 / Batch
Batch everything, and stop searching in a loop
The single biggest performance difference between a HubSpot integration that finishes and one that crawls is whether it batches. Create, read, update and archive endpoints all accept 100 records per call, so a 50,000 record backfill is 500 calls rather than 50,000. The matching mistake is calling the Search API per record to find the HubSpot ID. Search is capped at 5 requests per second and 10,000 results per query, so a per-record search is both slow and eventually wrong.
Step 03 / Match
Decide the unique property before the first write, not after
HubSpot deduplicates contacts on email, and additional email addresses are unique too, so two contacts cannot share one. That works until your source system has records with no email or with shared inbox addresses like billing@. Pick a unique property, populate it from the source system primary key, and upsert against it. Note that partial upserts are not supported when using email as the idProperty for contacts, which is exactly the case most teams try first.
Step 04 / Push
Subscribe to webhooks instead of polling on a timer
Polling every five minutes to find the handful of records that changed is how an account spends its daily allocation on nothing. Webhooks push creation, property change and deletion events to you, cost nothing against the API allocation, and allow 1,000 subscriptions per app. Keep a scheduled reconciliation pass as a safety net, because webhook delivery is not a guarantee, but let the webhook do the routine work.
Step 05 / Watch
Alert on the sync that stopped, not just on the error that fired
Two failure modes matter and only one of them is loud. A rejected record throws an error you can catch. A sync that has silently not run since Tuesday throws nothing at all, and the dashboard keeps rendering last week numbers as if they were current. Monitor freshness and record counts, back off properly on 429 responses rather than retrying immediately, and route the alert to a person who is on duty rather than to a channel nobody reads.
What teams actually connect HubSpot to
HubSpot into a warehouse for reporting
The most common request by a distance. HubSpot reports cannot join to product usage, billing or support data, so contacts, companies, deals and the custom objects get landed in Snowflake, BigQuery or Postgres and modeled there alongside everything else.
HubSpot and Salesforce in agreement
Marketing runs in HubSpot, sales runs in Salesforce, and both need the same view of an account. Bidirectional by nature, which is why per-field conflict rules and lifecycle stage mapping matter here more than anywhere else.
Deals into accounting
Closed Won creating an invoice in QuickBooks or Xero, and payment status coming back onto the deal so a rep is not chasing a renewal from a customer whose invoice is already 60 days overdue.
Product usage onto the CRM record
Seats activated, last login and feature adoption written onto the HubSpot company record, so the health score a CSM sees is the same number the data team computed rather than a guess.
Ecommerce orders alongside the pipeline
Shopify or Stripe order history attached to the HubSpot contact, so lifecycle emails know what somebody actually bought and marketing stops sending a first-purchase discount to a repeat customer.
Modeled scores back into HubSpot
Propensity models, usage tiers and account scores computed in the warehouse and written onto HubSpot properties. That is the reverse direction, with its own failure modes around rate limits and upsert matching.
The first one has a dedicated walkthrough in the HubSpot to BigQuery guide, the accounting case is covered in HubSpot to QuickBooks, and the last one, pushing modeled results back onto HubSpot properties, is covered on reverse ETL tools.
When another HubSpot integration tool is the right answer
We would rather you buy the correct thing than churn in month three. Five situations where Adapters is not what you want.
HubSpot Data Sync already covers it
If your other system is on the supported Data Sync list and the default property mapping fits, that is included in the subscription you already pay for. Buying a platform for that is spending money on a solved problem. Check the list before you check a shortlist.
You want a marketer to own the automation
Zapier and Make are genuinely better than us at letting a non-engineer wire up a notification, a form handoff or a Slack alert without filing a ticket. If the workflow changes weekly and lives with the marketing team, buy that instead.
You need dozens of connectors
If the list runs to forty SaaS sources including several obscure ones, buy catalog breadth. Workato, Boomi, Fivetran and Airbyte have spent years on that surface area and we have not.
The logic belongs in a HubSpot workflow
Branching rules that have to run the moment a HubSpot record changes, inside HubSpot, belong in a HubSpot workflow with a custom code action. An external sync runs after the fact by definition, and no scheduling frequency changes that.
Your volume genuinely is enormous
Flat pricing is a bet that most teams move a predictable amount of data. If you are moving hundreds of millions of records a month, negotiate a volume contract with a metered vendor and you will likely beat our list price. Our advantage is the middle, where a metered bill is unpredictable and a hand-built integration is a permanent staffing cost nobody put on the budget.
Four questions to ask on every HubSpot integration demo
Question 01
Does it use batch endpoints, and does it search per record?
Batch endpoints move 100 records per call. A tool that loops single requests, or calls the Search API once per record at 5 requests per second, will crawl and spend your allocation.
Question 02
Does it support custom objects and associations?
Every vendor lists HubSpot. Not every vendor replicates your custom objects, or preserves the association between a deal and the three contacts on it. Test the exact shape during the trial.
Question 03
How does it match records on update?
You want upsert against a unique property. Note that HubSpot does not support partial upserts when using email as the idProperty for contacts, which is the first thing most teams try.
Question 04
How does it behave when HubSpot returns a 429?
You want exponential backoff and a resumable job, not an immediate retry that makes the rate limiting worse, and not a silent failure that leaves half the batch unwritten.
Where HubSpot data usually goes next
Most HubSpot integration projects end up as one of these specific pairs. Each page covers the property mapping, the type conversions and the failure modes for that route.
Questions buyers ask about HubSpot integration tools
- What are HubSpot integration tools?
- HubSpot integration tools are the platforms that move records between HubSpot and the rest of your stack, either by calling the HubSpot APIs on a schedule or by reacting to webhooks. They fall into three groups: HubSpot-owned software such as Data Sync and the App Marketplace listings, general iPaaS vendors such as Workato, Celigo and Zapier, and warehouse-focused ELT vendors such as Fivetran, Airbyte and Adapters.
- What is HubSpot integration?
- HubSpot integration is the practice of keeping HubSpot and another system in agreement without anyone retyping data. In practice it means authenticating with a private app token or OAuth, mapping properties in both directions, deciding which system wins on a conflict, and running that on a schedule or webhook with retries and error logs.
- How much does HubSpot integration cost?
- HubSpot charges nothing extra for API access, so the cost is the platform plus the tier you need. Native Data Sync to a warehouse requires Data Hub Enterprise. Marketplace apps and iPaaS vendors bill on tasks, operations or connections, which is the number that moves. Adapters is flat at $49 to $399 a month regardless of record volume.
- What are the HubSpot API rate limits?
- Private apps get 100 requests per 10 seconds on Free and Starter and 190 per 10 seconds on Professional and Enterprise. Daily caps are 250,000, 625,000 and 1,000,000 calls per account by tier. Publicly distributed OAuth apps get 110 requests per 10 seconds per installing account. The CRM Search API has its own stricter ceiling of 5 requests per second.
- Does HubSpot have an API?
- Yes, and it is one of the better documented ones in the category. HubSpot exposes REST APIs for CRM objects, associations, properties, engagements, marketing events, forms and files, plus webhooks for push notifications. Authentication is a private app access token for single-account work or OAuth for apps you distribute to other accounts.
- Does HubSpot integrate with Salesforce?
- Yes, through a HubSpot-built connector that syncs contacts, companies, deals and selected properties in both directions, with per-field rules about which system wins. It is the most mature single integration HubSpot ships. The common friction points are field-level conflict rules, HubSpot lifecycle stage mapping to Salesforce lead status, and the Salesforce API allocation the sync consumes.
- Does HubSpot integrate with QuickBooks?
- Yes. A HubSpot-built QuickBooks Online integration surfaces invoices on the HubSpot record and can create invoices from deals. What it does not do is give you accounting-grade reporting across both systems. Teams that need revenue by campaign or pipeline usually land both sources in a warehouse and model them there instead.
- Can HubSpot integrate with Xero?
- Yes, through App Marketplace connectors rather than a first-party HubSpot build. They typically push contacts and create invoices from deals. If the requirement is reporting rather than invoice creation, replicating both HubSpot and Xero into a warehouse gives you joins that neither product can do on its own.
- Does HubSpot integrate with Snowflake?
- Yes, in both directions but with real conditions. The direct Snowflake to HubSpot sync needs Data Hub Enterprise and Smart CRM Enterprise, runs one way on a schedule, and caps at 30 million records per run, 10 GB per table or view and 200 columns. The legacy Snowflake data sync is being sunset on 28 September 2026.
- How do I integrate HubSpot with an external system?
- Create a private app in HubSpot, grant it only the scopes it needs, and store the access token as a secret. Use batch endpoints at 100 records per call rather than looping single requests, use the Search API sparingly because it is capped at 5 requests per second, and match on email or a custom unique property so updates upsert instead of duplicating.
The rate limits above have a dedicated walkthrough in the HubSpot API rate limits guide. For the categories around this one, see iPaaS software when the job is keeping business applications in agreement, and ETL software for how our own pipeline works end to end.
Connect HubSpot to your stack on a flat monthly price
Map the properties once, pick a schedule, and let it run with retries, alerts and per-record logs. From $49 a month, with no task meter and no row counter to forecast.
No credit card required.