Integrations

HubSpot Integration

Connect one HubSpot portal, enroll protected companies, preserve ownership, sync qualified contacts and milestones, and hand sellers their next step.

15 min readUpdated
Table of contents

Overview

The dripIq HubSpot integration brings selected HubSpot companies and their associated contacts into dripIq for research and outreach. HubSpot remains the system of record; dripIq acts as the execution engine.

One controlled revenue loop

HubSpot remains the system of record while dripIq runs research and outreach. dripIq reads CRM context, creates or maps qualified contacts by email, writes major outcomes, and packages the seller handoff without turning HubSpot into the sequencer.

  • One dripIq workspace admin connects one HubSpot portal.
  • Search preview shows a total and sample without creating dripIq records.
  • Enrollment supports 1–5,000 matching companies per job.
  • Admins can set monthly workspace and per-rep enrollment caps.
  • Owner assignment uses the HubSpot owner’s email—not the admin who runs the import.
  • Open deals, customer lifecycle records, and opted-out contacts are protected by default.
  • Newly discovered contacts map back to HubSpot by email without creating duplicate companies.
  • Major campaign outcomes and qualified handoffs return to the mapped CRM records.

Before you begin

  1. A dripIq account with admin access to workspace Settings.
  2. HubSpot visible under Settings. If it is missing, contact hello@dripiq.ai so the integration can be enabled for your workspace.
  3. A HubSpot user who can approve the requested CRM permissions for companies, contacts, owners, deals, tasks, notes, and dripIq properties.
  4. Company website domains populated in HubSpot. A company without a domain cannot be enrolled as a dripIq lead.

Workspace-level connection

HubSpot is connected once for the workspace, not once per rep. Salesforce can stay connected at the same time.

Connect your HubSpot portal

  1. 1

    Open Settings → HubSpot

    Sign in to dripIq as a workspace admin, open Settings, then choose HubSpot in the settings navigation.

  2. 2

    Click Connect HubSpot

    On the HubSpot card, click Connect HubSpot. dripIq starts a secure OAuth handshake and sends your browser to HubSpot.

  3. 3

    Choose the correct portal and approve access

    Sign in to HubSpot, select the portal you want to connect, review the requested CRM permissions, and approve access.

  4. 4

    Return to dripIq

    HubSpot redirects you to Settings → HubSpot. A success banner and Connected badge confirm the connection.

  5. 5

    Verify the portal identity

    Confirm the Authorized by email, Hub ID, Hub domain, and scopes shown on the connection card. dripIq never shows OAuth tokens in the browser.

Connection complete

The workspace can now preview HubSpot Search results and enroll eligible companies. Nothing is imported until an admin starts an enrollment.

Configure ingest quotas and safety

After connecting HubSpot, use the Ingest quotas and safety card on Settings → HubSpot to control new-company volume and the policy applied during enrollment. The server enforces these settings for every job.

  • Tenant monthly ingest cap — maximum new HubSpot companies the workspace can enroll in a UTC month. The default is 5,000.
  • Per-rep monthly ingest cap — maximum new companies credited to one mapped owner in a UTC month. The default is 500 and cannot exceed the tenant cap.
  • Max records per enroll job — job-level limit from 1 to 5,000. The default is 5,000.
  • Unmapped HubSpot owner — either leave the lead unassigned (default) or skip the company entirely.
  • When monthly quota is exhausted — stop paging and skip remaining companies (default), or fail the enrollment job.
  • Suppression switches — control open-opportunity, HubSpot DNC/unsubscribe, and customer-lifecycle checks. All three are enabled by default.
  1. 1

    Review the defaults

    Open Settings → HubSpot and find Ingest quotas and safety below the connection card. Confirm the starting limits fit your monthly recovery motion.

  2. 2

    Choose the unmapped-owner behavior

    Use Leave unassigned when operations will assign leads later, or Skip enroll when every imported company must have a matched active workspace member.

  3. 3

    Choose quota exhaustion behavior

    Use Skip remaining companies for partial job completion, or Fail the enroll job when exceeding a cap should surface as a job failure.

  4. 4

    Save settings

    Click Save settings. The card also shows tenant and rep usage, remaining volume, and caps for the current UTC month.

What counts toward quota

Only new HubSpot-sourced companies that create dripIq leads count. Updates to existing mappings and contacts discovered later do not count. A matched HubSpot owner uses that rep’s bucket; unassigned leads use only the tenant cap.

Unknown eligibility still blocks

Suppression switches choose which HubSpot rules to evaluate; they do not enable fail-open sending. If dripIq cannot confirm eligibility for a mapped record, enrollment or sending remains blocked.

Enroll companies into dripIq

  1. 1

    Click Enroll companies

    After a valid preview, click Enroll companies. dripIq queues the import so you can leave the page while it runs.

  2. 2

    Watch the job status

    The card shows the job state and summarizes created, skipped, and errored companies when results are available.

  3. 3

    Review the resulting leads

    Eligible HubSpot companies become dripIq leads. Associated eligible contacts become points of contact, and the normal research pipeline begins.

What is skipped

  • Companies with an open deal or a protected customer lifecycle stage.
  • Companies for which HubSpot eligibility cannot be confirmed.
  • Companies without a website domain.
  • Domains already claimed by another dripIq workspace.
  • Contacts marked do-not-contact or unsubscribed in HubSpot.

Safe to re-run

Re-enrolling a mapped company updates the existing dripIq lead instead of creating a duplicate. Contacts with no associated company are never imported by this flow.

How owner matching works

dripIq uses email to preserve ownership without requiring an admin-maintained mapping screen. The HubSpot company owner email is lowercased and compared with active members of the dripIq workspace.

  1. Read the HubSpot company owner and owner email.
  2. Match the lowercased email to an active dripIq workspace member.
  3. If a match exists, assign the lead to that member.
  4. If no match exists—or the HubSpot owner has no email—leave the lead unassigned.

The importer is never the fallback owner

An unmatched company stays unassigned. dripIq does not silently assign it to the admin who ran the enrollment. An unassigned lead cannot begin email outreach until someone with a connected mailbox owns it.

Suppression and send protection

Protection is applied during enrollment and again before outreach. This keeps stale CRM records or changed deal status from turning into an unsafe send.

  • Company eligibility is refreshed from HubSpot every 15 minutes.
  • Local unsubscribe and communication-suppression records are checked first.
  • Mapped HubSpot companies and contacts use the refreshed eligibility cache before a drip or agent reply sends.
  • A known suppressed state blocks the send.
  • An unknown eligibility state also blocks the send until dripIq can confirm it is safe.
  • Records without a HubSpot mapping continue to use dripIq local suppression rules.

HubSpot stays the source of truth

If a deal opens, lifecycle changes, or a contact opts out in HubSpot, the next reconciliation updates the local protection state used by dripIq.

Map and sync newly discovered contacts

When dripIq discovers a new point of contact for an enrolled company, contact sync uses the CRM mapping and email identity before making any HubSpot change.

  1. Confirm the dripIq lead has a mapped HubSpot company and is still eligible.
  2. Use an existing contact mapping when one is already stored.
  3. Search HubSpot contacts by the person’s email address.
  4. Map and associate an existing match to the company, or create and associate a new contact when create-back is enabled.
  5. Skip the update if the HubSpot contact ID already belongs to a different dripIq contact.

Mapping first

dripIq never creates a HubSpot company during contact sync. A missing company mapping, missing email, suppression, or identity conflict stops the create-back safely.

Write major outcomes to HubSpot

dripIq keeps HubSpot useful to sellers by projecting the milestones that change what the team should do next—not every background engagement event.

  • Campaign start, pause, and exhaustion update the mapped record’s dripIq status.
  • Reply classification, unsubscribe, and meeting-booked outcomes update the relevant company or contact.
  • Each major milestone creates one associated HubSpot note with duplicate protection.
  • Campaign dates, last reply class, outcome, meeting details, and owner email stay visible through the `drip_iq` property group.
  • Per-email opens, clicks, and sequence activity remain in dripIq to keep the CRM timeline focused.

Outreach never waits on writeback

Milestone updates run asynchronously. A temporary HubSpot writeback issue does not stop a dripIq campaign send or agent reply.

Create the qualified seller handoff

A positive reply, booked meeting, or explicit qualification produces one packaged HubSpot handoff for the contact. Multiple qualifying events merge into the same handoff instead of creating duplicate seller work.

  1. 1

    Confirm the trigger is enabled

    HubSpot automation settings control whether positive replies, meetings, and explicit qualification create a handoff.

  2. 2

    Resolve the contact and company

    dripIq performs the mapping-first email upsert and requires a mapped HubSpot company before creating seller work.

  3. 3

    Mark the record qualified

    The mapped record receives `drip_iq_status = qualified` along with the latest outcome context.

  4. 4

    Create the HubSpot task

    The task routes to the mapped owner. If no owner is mapped, it remains unassigned instead of falling back to the importing admin.

  5. 5

    Apply the deal policy

    Keep the default task-only handoff, create a deal only when no open deal exists, or always create a deal in the configured default pipeline.

The AE gets one clear next step

dripIq outreach stops when the meeting is set, and the CRM handoff preserves the owner, qualification context, and meeting outcome in one place.

Reconnect or disconnect HubSpot

Reconnect an expired connection

If HubSpot revokes access or the refresh token stops working, the connection card shows a re-authorization warning. Click Reconnect, approve access in HubSpot again, and verify the Connected badge returns.

Disconnect the portal

  1. 1

    Open Settings → HubSpot

    Sign in as a dripIq admin and open the HubSpot settings page.

  2. 2

    Click Disconnect

    On the connected HubSpot card, click Disconnect to deactivate the workspace connection.

  3. 3

    Revoke in HubSpot (optional)

    You can also remove the dripIq app from HubSpot connected-app settings.

Disconnecting stops HubSpot preview, enrollment, reconciliation, contact sync, milestone writeback, and seller handoffs. It does not delete leads, contacts, research, campaigns, or CRM activity already created.

Troubleshooting

HubSpot is missing from Settings

The HubSpot page is admin-only and may be enabled per workspace. Confirm you are a workspace admin. If it is still missing, contact hello@dripiq.ai with your workspace name.

Connect fails or opens the wrong portal

  • Confirm you are signed in to the intended HubSpot account and selected the correct portal.
  • Use a HubSpot user who can approve the requested CRM read permissions.
  • If the wrong portal is connected, disconnect it in dripIq and run Connect again.
  • A HubSpot portal can have only one active dripIq workspace connection.

Enroll companies is disabled

  • Run Preview search after changing filters.
  • Confirm the preview has at least one matching company.
  • Narrow the Search if the preview exceeds the configured per-job cap.
  • For advanced Search, confirm at least one filter has a HubSpot property name.

A company or contact was skipped

Check for an open deal, customer lifecycle, missing company domain, cross-workspace domain claim, or contact opt-out. A HubSpot API error also causes the record to be skipped rather than imported without safety context.

A lead is unassigned

Confirm the HubSpot company owner has an email and that the exact email belongs to an active member of the dripIq workspace. Email matching is case-insensitive. After fixing membership or CRM ownership, re-enroll to refresh the mapping.

Still stuck?

Contact us at hello@dripiq.ai with the dripIq workspace name, Hub ID, approximate enrollment time, and the job ID shown on the enrollment card. Do not send OAuth tokens or customer contact data.

Need more help?

Our team can walk you through integrations, Smart Scheduling setup, and onboarding.