How to auto-enrich new CRM contacts with Apollo.io

Auto-fill empty fields on new HubSpot or Salesforce contacts with Apollo data, without overwriting edits or flooding the CRM with new records.

A web lead arrives with a name and an email address, and nothing else. Your rep then spends five minutes finding the job title, company size and phone number before the first call. Apollo can fill those fields in automatically. But the way most people connect it, Apollo also starts pushing every contact anyone saves in Apollo into the CRM, along with new company records and email activity. Six months later the CRM is twice the size, and half of it is people nobody has ever spoken to. This guide sets up enrichment on new records only, fills empty fields only, and keeps Apollo from adding records you didn’t create.

What you need

  • A paid Apollo plan. Apollo’s help center says CRM enrichment is available on paid plans. Free plans can enrich up to 100 CRM records every 30 days, which is enough to test with. Apollo’s pricing page lists Basic, Professional and Custom tiers. Check it for current per-seat prices and credit allowances.
  • Credits. Apollo says real-time enrichment “requires credits.” Each enriched record uses credits from your team’s pool. Credits are pooled across the team and granted at the start of each billing cycle.
  • HubSpot or Salesforce. CRM enrichment works with those two integrations only. You can connect only one CRM to Apollo at a time.
  • Permissions. For HubSpot, Apollo needs a HubSpot super admin plus an Apollo admin, or a user with CRM edit permissions, to connect. Only Apollo admins can map default CRM fields.

Step by step

1. Pick the right HubSpot integration (this is the bloat decision)

Apollo offers two HubSpot connections, and you can only use one per team:

  • HubSpot CRM: a two-way sync. Apollo pushes and pulls contacts, accounts and deals, and pushes activities (calls, emails, meetings, tasks, notes).
  • HubSpot Data Enrichment: enrichment only. Apollo’s docs say there is “no push of contacts, accounts, deals, or activities.”

If your team prospects inside HubSpot and only wants Apollo to fill in blanks, connect HubSpot Data Enrichment. It’s the simplest way to make sure Apollo never creates a record in your CRM. If your reps work leads in Apollo and need that activity logged in HubSpot, you need HubSpot CRM. In that case, do step 4 carefully.

Salesforce has a single integration, so on Salesforce the controls in step 4 are what keep your CRM clean.

To connect, go to Settings > Integrations in Apollo, click Connect next to the HubSpot option you chose, and authorize the account.

2. Map fields and set write rules field by field

In Apollo, open Settings > Integrations, click View next to HubSpot, then Contacts > Fields. Apollo maps what it can automatically. Check the mapping, then open Data writing rules. For each field you get two options:

  • Auto-fill: writes only when the CRM field is empty.
  • Overwrite: replaces whatever is in the CRM.

My default for a small team:

Field Setting
Job title Auto-fill
Company name, website Auto-fill
Employee count, industry Auto-fill
Phone (direct/mobile) Auto-fill
City, state, country Auto-fill
Email Leave unmapped for writing
Lifecycle stage, lead status, owner Never let Apollo write

I use Auto-fill almost everywhere because reps often correct a title or phone after a call. Overwrite undoes that correction the next time Apollo syncs. Apollo notes it only overwrites when its value differs, but “differs” includes cases where your rep’s version is the right one.

3. Turn on real-time enrichment for new records

Go to Data enrichment > Data health center (or CRM), click Automate Enrichment > Enable real-time enrichment, and toggle on Contacts. Turn on Leads too if you’re on Salesforce. Leave Accounts off at first. Then select only the fields from your table above, and click Save.

Apollo pulls records from your CRM every 15 to 30 minutes, depending on the CRM. It then enriches them and pushes the updates back. So a new web lead will usually be filled in within half an hour, not instantly. If your reps call within five minutes, they’ll make that first call with the bare record. Tell them that so they don’t think it’s broken.

4. Shut off the pushes that add records (two-way sync only)

If you connected HubSpot CRM or Salesforce, go to Settings > Integrations > HubSpot (or Salesforce), then into Contacts, Accounts and Activities, and click Sync on each:

  • Contacts: Under Push contacts, click Edit Conditions and only push contacts that meet a condition, such as a specific stage or a verified email. Apollo says push settings apply to net new contacts saved in Apollo or imported from a CSV.
  • Accounts: Apollo pushes new accounts by default. Untick Push accounts if you don’t want companies created from Apollo. But note Apollo’s warning: pushing a new contact can still create its company in HubSpot, even with account push off.
  • Emails: Leave Push emails even if sender or recipient doesn’t exist in HubSpot unticked. Apollo’s own docs warn this “may result in the creation of contacts in HubSpot that you don’t expect to see.”
  • Source: Set a source value, such as “Apollo,” so you can always filter what came from it.

On Salesforce, if your plan has selective sync, use Pull contacts based on specific conditions so Apollo only pulls the records you actually want enriched.

Also note the setup window. On paid plans Apollo gives you six hours after connecting to set sync settings and map fields, and then syncing turns on automatically. Do steps 2 and 4 in one sitting, right after you connect.

5. Test on ten records, then check the credit use

Create ten test contacts in your CRM with just a name and work email, using real people at real companies who are fine with it, such as colleagues. Wait 30 to 45 minutes. Then check three things:

  • Which fields filled?
  • Did anything overwrite a value you typed?
  • How many credits were used? Check Settings > System activity > Data requests and the CRM field tab, filtered to Automated.

Multiply that credit use by your typical monthly new contacts. If you add 300 contacts a month and each enrichment uses a credit, that’s 300 credits a month before anyone prospects. Make sure your plan covers it.

6. Leave scheduled bulk enrichment for later

Apollo can also run scheduled enrichment jobs, weekly or monthly, on existing records, with a cap per run. It’s useful once you trust the mapping. Start with a filter, such as contacts created in the last 90 days, and a small cap, rather than letting it loose on the whole database.

Common mistakes

  • Connecting HubSpot CRM when you only wanted enrichment. It brings two-way sync and pushes you didn’t plan for.
  • Overwrite on title and phone. It undoes reps’ corrections every sync.
  • Ignoring the six-hour window. Sync turns on before the mapping is right.
  • Forgetting the company side effect. Contact pushes can create companies even with account push off.
  • Not budgeting credits. Real-time enrichment runs on every new record and draws on the same pool your reps prospect with.

When it’s worth getting help

If you’re on HubSpot and only need blanks filled, the enrichment-only connection plus Auto-fill is a 30-minute job. It’s worth getting help when you need two-way sync, have years of duplicate records, or have a lead-scoring setup that depends on fields Apollo would write to. In that case one bad setting can change a lot of records at once. The HubSpot and Salesforce pages cover how I approach those CRMs. The cost calculator helps weigh the time.

Sources

Founding-client pricing · 3 spots per industry

Show me the manual work. I'll show you the system.

20 minutes by phone or video. You show me the task that eats the most time. Within 24 hours you get a one-page written plan with a fixed price. Yours to keep either way.

Free · Phone or video · Written plan within 24 hrs