Skip to content

Instantly

When to use this guide: Read this before configuring Instantly with OutboundSync to confirm what the integration covers today.

OutboundSync connects Instantly to HubSpot and Salesforce as a one-way sync, sending email engagement activity and reply-category labels into your CRM as events occur.

Instantly is an email-engagement platform with built-in reply categorization, meeting tracking, and label routing. OutboundSync receives Instantly webhook events and writes structured activities to the matching contact or lead — including detailed reply categories like meeting booked, out of office, wrong person, or not interested.

Custom labels configured in Instantly also flow through so teams can drive workflows from the labels they already use for routing.

Use OutboundSync webhooks — not Instantly’s native CRM integrations

Section titled “Use OutboundSync webhooks — not Instantly’s native CRM integrations”

Instantly offers built-in HubSpot and Salesforce connectors. When you sync through OutboundSync, configure Instantly webhooks → OutboundSync and leave Instantly’s native HubSpot and Salesforce integrations off (or disconnect them). OutboundSync is built for deeper activity sync, block lists, and attribution; running both connectors can duplicate or conflict activity on the same contacts.

A common reason teams switch: native connectors often do not reliably attach outbound activity to contacts that already exist in HubSpot. OutboundSync matches existing contacts (by email, HubSpot record ID, or a custom lookup field) and logs activity on those records.

  • Email sends, opens, link clicks, replies, bounces, and unsubscribes
  • Reply category signals: lead interested, meeting booked, meeting completed, lead closed, out of office, wrong person, not interested, and neutral
  • Custom labels applied in Instantly
  • Campaign completed without reply — when a lead finishes every Instantly campaign step with no reply, Instantly can send campaign_completed_for_lead_without_reply. Instantly only emits that payload on a webhook set to All events (Instantly Webhooks). OutboundSync syncs it as LEAD_CATEGORY_UPDATED. See How OutboundSync queues and prioritizes webhook payloads for delay behavior.
  • Campaign, step, and timestamp metadata on every activity

The Instantly Source create/edit screen in OutboundSync (including the Source diagram) lists which Instantly events OutboundSync syncs to your CRM. Instantly may document other webhook events (for example Campaign completed); if they are not on that diagram, they are ignored and not billed.

Optionally hold Instantly activity until a lead hits an allowlisted Instantly label or category, then release the held history into your CRM. For the shared hold-and-release lifecycle, see How category-based filters work.

Filtered sync for Instantly requires an Instantly API key.

  1. Open the Instantly Source in OutboundSync and edit its settings.
  2. Under Approved events for data sync, choose the filtered option (FILTERED data syncs to your CRM).
  3. Under Category-based filter, select the Instantly labels or categories you want to allowlist.

When a lead hits an allowlisted category, OutboundSync releases held activity for that Source, campaign, and lead. Include Instantly’s category and label events on the Instantly webhook so category state stays accurate. If you track non-responders with category filters, allowlist Instantly’s no-reply completion label as well — otherwise held sends may never release for those leads. Test with a category event first — see Sending test webhook payloads.

Unsure whether to sync everything, hold until a lead is qualified, or keep a lower-volume replies-and-categories setup? Start with How do I decide which data to sync? — then apply Instantly’s UI constraints below.

Instantly’s webhook UI asks you to choose All events or specific event types (Instantly Webhooks). OutboundSync bills by sent messages only (Pricing). Instantly-specific constraints:

  • campaign_completed_for_lead_without_reply only fires when the webhook is set to All events. That path also sends Email sent. You cannot keep Email sent off on the same Instantly webhook if you need non-responder completion.
  • Specific event types can omit Email sent for lower volume (and lower Salesforce API usage — How many API calls does OutboundSync use?).
  • Category filters that should release held sends still need Email sent on the Instantly webhook (via specific events or All events). FILTERED holds and releases in OutboundSync; it does not create send history Instantly never sent.
  • Which events Instantly sends is a webhook setting in Instantly. Setup detail: Instantly webhook guide.

OutboundSync syncs HubSpot and Salesforce list-based blocklists into Instantly so prospects you exclude in your CRM are excluded from Instantly campaigns. See block list maintenance for the day-to-day workflow, and Updating block and exclusion lists for Salesforce report setup.

If you are comparing OutboundSync to Zapier or a custom build, here is how sync direction works:

  • Activity sync (Instantly → CRM): email sends, opens, clicks, replies, bounces, unsubscribes, and category updates flow into HubSpot or Salesforce.
  • Block list sync (CRM → Instantly): reports or lists you maintain in your CRM are pushed back into Instantly as block lists.
  • Not synced: edits your team makes to activity records in the CRM are not pushed back to Instantly.

Evaluators often ask for “two-way” sync. OutboundSync is a one-way activity sync with CRM-driven block list write-back — not bidirectional activity editing in both systems.

Instantly webhooks and API access require Instantly Hypergrowth (or above) — see the Sales engagement platform tier guide.

If open-pipeline (or other) suppression must cover both Leads and Contacts in Salesforce, you need separate reports and separate OutboundSync block-list configs — see Updating block and exclusion lists.

  • HubSpot — direct integration
  • Salesforce — direct integration
  • Close — supported during the current Close beta
  • Attio — supported during the current Attio beta
  • One-way sync (with block list write-back). Activity flows Instantly → CRM. Block list entries flow CRM → Instantly. CRM-side edits to activity records are not pushed back.
  • Email channel only. Phone and social are out of scope.
  • No company name in Instantly webhooks. Instantly webhook payloads omit company name. On Salesforce create, Account Name falls back to the contact’s email domain. Lead Company uses the same domain fallback when an email is present; otherwise it uses "Unknown Company".
    • Primary mitigation: pre-load Contacts or Leads before campaigns — and, when you need Account matching without a Contact, ensure Accounts have Website (or other accountLookupFields) set to the email domain — so Upsert matches existing records instead of creating domain-named Accounts. See Data is incomplete in my CRM.
    • If you do not want net-new Salesforce records: set the webhook receiver to Upsert or Update Only. Update Only skips create when no Contact/Lead match is found (and skips creating an Account for a matched Contact that has none); it does not rename domain-named Accounts.
  • Self-serve setup. Follow the Getting Started guides to connect Instantly, send test payloads on the free tier, and verify CRM activity. Guided onboarding and customer success support are also available — contact support.