Help centre / Integrations and tracking

HubSpot NetSuite sync errors and records not syncing: how to find and fix them

Fix HubSpot NetSuite sync errors: the sync card, sync health, NetSuite role and token, dropdown mappings, owners and unsynced records.

By Abdur Rahim Mostafa, HubSpot consultant · Updated 26 October 2026 · 5 min read

HubSpot's NetSuite integration runs on HubSpot data sync, so every record that fails or gets skipped is listed with a reason. Most causes fall into two groups. Either the NetSuite side of the connection changed (a feature, the HubSpot Sync role or the access token), or individual records don't fit the mappings, for example a dropdown value that exists in one system only or an owner who isn't a user in both.

The first thing to check is the NetSuite sync card on a record that should be syncing. Its status tells you whether the record has an error, is excluded or isn't part of a sync at all. From there, the CRM syncs tab shows the same problem across every record.

Why HubSpot and NetSuite records don't sync

The record is failing or excluded

The NetSuite sync card appears on contact, company, deal and invoice records once you enable it on the app's Feature discovery tab. If you had customized the record sidebar, or installed the app after Oct. 7, 2025, someone with permission has to add the card by hand. The status reads Up to date, Sync not found, Sync off, Record not syncing, Unknown sync or Record excluded. Hover over Record not syncing for the error, or click it to open sync health.

For the full picture, go to Settings, then Integrations, then Connected Apps, open NetSuite and click CRM syncs. Each object shows records in sync, failing and excluded. Sync Activity gives the reason for each failure, and the Troubleshoot option opens Breeze Assistant with suggested steps. Excluded records don't match your sync filters or have no unique identifier. By default, data sync matches contacts by email and companies by name or domain, so clear duplicate contacts before the first sync. HubSpot's data sync guide covers these views.

The NetSuite connection changed

The integration depends on several things in NetSuite, set up by a NetSuite administrator according to HubSpot's NetSuite setup article. These are enabled features (SuiteAnalytics workbook, SOAP web services, REST web services, token-based authentication and server SuiteScript), the HubSpot Sync Bundle, the HubSpot Sync role on the connecting user, and an access token for the HubSpot Sync application. A change to any of them, such as a revoked token, can break the connection for every object.

Oracle notes that token-based authentication tokens don't expire, and the Token ID and secret are shown only once. If they're lost, you create a new token. Tokens also aren't copied into sandbox accounts, so after every sandbox refresh you need new tokens there. See Oracle's page on creating TBA tokens.

Dropdown values or mappings don't match

As of October 2026, custom field mappings need a Data Hub subscription. Dropdown options are copied when the sync is created, and HubSpot doesn't add new ones automatically, so a value added later in NetSuite can fail until you save and restart the sync. For deal stage, ticket status and order status, the NetSuite value must match the HubSpot label. HubSpot's guide to data sync field mappings lists which property types map each way.

The NetSuite Status field shows how exact this has to be. To sync it, you create a dropdown contact property called NetSuite Status whose option labels match NetSuite's values exactly, including case. HubSpot doesn't fill it for you, and if the object sync already exists, records only sync once they're updated in either system.

The owner isn't a user in both systems

Owners have to exist as users in HubSpot and in NetSuite. HubSpot says that if a user exists in one app and not the other, the data won't sync. This catches new reps and anyone who left one system before the other. For names to sync, the First Name and Last Name mappings both have to be on.

You expect a record the integration doesn't cover

The integration syncs these objects, one way or both ways as you choose.

HubSpotNetSuite
ContactsContacts and individuals
CompaniesCompanies
DealsOpportunities
OrdersSales orders
InvoicesInvoices
ProductsInventory, assembly, kit, non-inventory and service items
TicketsSupport cases
ActivitiesCalls, events and tasks

Estimates aren't on HubSpot's list. If your reps quote in NetSuite and need those quotes as HubSpot deals, that needs a different build. If you use subsidiaries in NetSuite, the integration also adds a NetSuite Subsidiary property to synced records, which you can use to compare subsidiary values between the two systems.

How to fix NetSuite sync errors

  1. Open a record that isn't syncing and read the status on its NetSuite sync card.
  2. Go to Connected Apps, then NetSuite, then CRM syncs. Note the failing and excluded counts per object and read the Sync Activity errors.
  3. If whole objects are failing, ask your NetSuite administrator to check the enabled features, the bundle, the HubSpot Sync role and the access token. Create a new token and reconnect if needed.
  4. Fix mapping errors. Match dropdown labels in both systems, then save and restart the sync after adding options.
  5. Add missing owners as users in both systems.
  6. On the Record view tab, select the fixed records and choose Rerun sync.
  7. Check the sync card again on one fixed record.

How to stop it happening again

Write down which NetSuite user and role own the integration token, and tell whoever manages NetSuite roles. Add new reps to both systems on the same day. When you add a dropdown value in NetSuite, add it in HubSpot and restart the sync. Check the CRM syncs tab weekly, the same way you would for the Shopify integration. If you test in a sandbox, put new tokens on the checklist for every refresh. My guide to HubSpot NetSuite integration options compares the native app with other routes.

From client work

For Freedom and Glory Flags, quotes lived in NetSuite where sales follow-up couldn't see them. I built a custom sync with NetSuite SuiteScript and a HubSpot private app, with no connector app. Estimates reach HubSpot as deals every 15 minutes for the reps in scope. The customer and contact sync matches existing records first and only creates missing ones, with the right owner. A one-time backfill matched 207,879 contacts to their NetSuite IDs, and qualified HubSpot contacts create NetSuite leads, linked to the existing record when the email is already there.

If the sync keeps failing, or the native integration doesn't cover what your team needs, I can look at your NetSuite and HubSpot setup and build or fix the sync.

Questions

Does the HubSpot NetSuite integration need a paid HubSpot plan?

The app is available on all HubSpot plans. Custom field mappings need a Data Hub subscription.

Can I connect a NetSuite sandbox?

Yes, HubSpot supports a production or sandbox environment. Sandbox tokens have to be created again after each sandbox refresh.

Will token-based authentication stop working?

Oracle says that from release 2027.1 no new integrations can use token-based authentication for SOAP web services, REST web services or RESTlets. Existing integrations keep working, and Oracle points new RESTlet and REST web services integrations to OAuth 2.0.

Did this fix it?

Written by Abdur Rahim Mostafa. I'm an independent HubSpot consultant with 12 years of HubSpot work. I fix and build HubSpot portals, integrations and automation for teams in the US, UK and Australia. See my case studies or find me on LinkedIn.

Can't find your fix?

Book a free 30-minute call and show me what's happening in your portal. If it needs work, you get a written scope and one fixed price.

Book a free 30-minute call