Troubleshooting
Data is incomplete in my CRM
Troubleshoot incomplete CRM data after OutboundSync syncs — fix missing last names, company names, or other fields caused by payload gaps or mapping configuration.
When to use this guide: Use this guide when expected sync behavior is missing, delayed, or incorrect.
Sometimes, payloads reach OutboundSync, but the CRM may still be missing certain information (e.g., last names or company names).
This is separate from data not appearing in your CRM at all . This is a case where data is syncing, but certain fields or properties appear to be incomplete.
This happens either because the webhook did not originally contain that data when it was sent/received, or because it’s that field is not mapped by OutboundSync by default.
There are typically two ways to resolve this issue:
- Pre-load leads, contacts and accounts/companies in your CRM using a data enrichment tool like Clay before importing them into your email sequencer. This way, OutboundSync is primarily designed for logging email activities rather than creating lead, contact, and account/company records.
- Ensure full contact details, including first and last name, are updated on the lead details before outbound campaigns begin. This helps assure that webhooks are sent with complete information before reaching OutboundSync. This doesn’t address every field but does solve for first and last names.
For companies with strict data hygiene requirements, we recommend pre-loading or importing leads, contacts, and accounts/companies ahead of time.
For HubSpot teams that do not want OutboundSync creating net-new contacts, pair this preload workflow with Contact handling: Update Only on the HubSpot source. That keeps HubSpot as the source of truth: existing matched contacts can receive activity and property updates, while unmatched outbound prospects stay out of HubSpot until your team imports or qualifies them.
For Salesforce teams with the same requirement, pair preload with Update Only on the Salesforce source (Upsert or Update Only). That skips creating unmatched Leads and Contacts, and also skips creating an Account when a matched Contact has none. Update Only prevents creates; it does not rename existing domain-named Accounts.
Instantly webhooks omit company name, so under Upsert a new Salesforce Account Name falls back to the contact’s business email domain — preload Contacts/Leads (and Accounts with Website / accountLookupFields covering that domain) before campaigns when Upsert is required. See the Instantly overview. Free email domains such as gmail.com are never used as the Account name when Skip free email domains is on — see Gmail and personal email addresses.
If you are using Category-based filters and only syncing select data into your CRM, you will need to run that enrichment after those events occur via a tool like Clay, Make, Zapier, or n8n.
Gmail and personal email addresses
Section titled “Gmail and personal email addresses”OutboundSync identifies a contact’s company from their email domain. A personal address such as jane@gmail.com says nothing about where Jane works, so the Skip free email domains source setting keeps free and personal domains out of company matching. It sits next to Create or update company in the source settings for HubSpot, Salesforce, Close, and Attio.
With Skip free email domains on, OutboundSync never creates, matches, or names a company by a free email domain. That covers 4,748 free and personal email domains — based on HubSpot’s published free-email-domain list plus curated additions (gmail.com, yahoo.com, outlook.com, and regional webmail, ISP, and disposable domains). Instead, OutboundSync uses the first of these it can find:
- Company website from your sales engagement platform (for example Smartlead’s
websitefield or the HeyReach company URL), when it’s a business domain and not a social profile host (such aslinkedin.comorx.com) or another free domain. - Company name. Matching ignores case, punctuation, and legal suffixes such as Inc, LLC, Ltd, and GmbH, so “Acme” and “Acme, Inc.” are the same company. Placeholder names such as “N/A”, “Self-employed”, “-”, or “Unknown” count as no company name.
- No company. The contact still syncs without one.
The free domain itself is never written to your CRM: not to HubSpot company Domain, Additional Domains, or contact Website URL; Salesforce Account Website or Name, or Lead Company; the Close Lead URL; or Attio Company domains. Contacts with a business email domain sync exactly as before, and you no longer need to turn off Create or update company for Gmail-heavy lists.
When no company is identified
Section titled “When no company is identified”- HubSpot: the contact is still created or updated, and email, task, and call activity is still logged, just without a company association.
- Salesforce Leads: Lead
Companyis set to the person’s name (or “Unknown Company” if there is no name), so converting the Lead creates a one-to-one Account. - Salesforce Contacts: the Contacts with no company setting decides whether OutboundSync creates an Account named after the contact (with a Description saying OutboundSync created it), creates no Account, or uses one shared “Unknown Company” Account. See Contacts with no company.
- Close and Attio: see Close lookup and Attio company matching.
How to tell it happened
Section titled “How to tell it happened”When the setting changes how a company was handled, the row in sync history shows a note, for example “Company skipped: gmail.com is a free email domain and no company name or website was provided” or “Company matched by name “Acme” (gmail.com is a free email domain)“. Salesforce notes name the Account (for example “Created a dedicated Account “Jane Dough”: …“), and Close notes name the Lead. The sync status stays Success. The API returns the same notes as notes on GET /api/v1/syncs.
Defaults for new and existing sources
Section titled “Defaults for new and existing sources”- New sources: on.
- Existing Close and Attio sources: on. They already skipped free email domains.
- Existing HubSpot and Salesforce sources: off until you turn the setting on in the source. OutboundSync does not change this setting on existing sources for you.
- Salesforce Contacts with no company: new Contact sources default to Dedicated; existing Salesforce Contact sources keep Shared “Unknown Company” until you change the setting.
Existing companies aren’t cleaned up
Section titled “Existing companies aren’t cleaned up”Turning the setting on doesn’t change records that already exist. Contacts already associated with a “Gmail” or “Yahoo” company in HubSpot, or with a “gmail.com” Account in Salesforce, stay associated. Delete those companies or remove the associations in your CRM. With the setting on, OutboundSync won’t recreate them.
HubSpot can also link Gmail contacts to a company on its own. Its automatic company association setting (Settings → Objects → Companies) can match a company through a redirect domain. That’s HubSpot behavior, not an OutboundSync sync. To stop it, exclude gmail.com and googlemail.com in that setting.