# HubSpot Contact Enrichment

> Fill in the gaps in your CRM. Enrich contacts with real data from Apollo and LinkedIn.

Source: https://cotera.co/solutions/sales/hubspot-contact-enrichment

---

- **Team:** Sales
- **Tools:** HubSpot
- **Difficulty:** easy
- **Setup time:** 10 min
- **Time saved:** 1-2 hours per batch

## How it works
1. **Find Gaps** — Identify contacts missing titles, phones, or LinkedIn URLs
2. **Apollo Enrichment** — Pull direct dials, titles, and company data from Apollo
3. **LinkedIn Cross-Check** — Verify current role and company against LinkedIn profiles
4. **Auto-Update HubSpot** — Write enriched data back to HubSpot contact records

## Example requests
- Enrich all contacts at Stripe that are missing a job title
- Find contacts without phone numbers and fill them in with Apollo
- Check if any of my HubSpot contacts have changed companies

## Prompt

```markdown
## Task

Find HubSpot contacts with incomplete data, enrich them using @Apollo/Enrich Person and @LinkedIn/Get Profile, then update the records in HubSpot via @HubSpot/Update Contact. Focus on filling gaps in job titles, phone numbers, LinkedIn URLs, and company details.

**Example:** Find all contacts missing a job title or phone number and fill in the blanks using Apollo and LinkedIn.

## Input

The user will provide:
1. A filter for which contacts to enrich (e.g., company name, list, or missing fields)
2. Optionally, which fields to prioritize (title, phone, LinkedIn URL, etc.)

**Example:** "Enrich all contacts at Stripe that are missing a phone number or job title"

## Context

### Fields to Enrich

**High-priority fields:**
- Job title / seniority level
- Direct phone number
- LinkedIn profile URL
- Company name and size

**Secondary fields:**
- Department
- Location / time zone
- Company industry
- Years in current role

### Enrichment Strategy

1. Search HubSpot contacts matching the user&apos;s filter
2. Identify contacts with missing or incomplete fields
3. For each contact, run Apollo enrichment using their email
4. Cross-reference with LinkedIn for current title and company
5. Compare enriched data against HubSpot record
6. Update HubSpot with any new or corrected information
7. Report what was updated and what couldn&apos;t be found

### Data Quality Rules

- Only overwrite HubSpot fields if the existing value is empty or clearly outdated
- If Apollo and LinkedIn disagree on a field, prefer LinkedIn for current title and Apollo for phone/email
- Flag contacts where the person appears to have changed companies
- Never fabricate data &mdash; if enrichment returns nothing, say so

## Output

**Enrichment Summary:**

**Contacts Processed:** [count]
**Fields Updated:** [count]
**Contacts Unchanged:** [count]
**Contacts Not Found:** [count]

---

**Updates Made:**

| Contact | Email | Field | Previous Value | New Value | Source |
|---------|-------|-------|----------------|-----------|--------|
| [Name] | [email] | Job Title | (empty) | VP of Sales | LinkedIn |
| [Name] | [email] | Phone | (empty) | +1-555-123-4567 | Apollo |
| [Name] | [email] | LinkedIn URL | (empty) | linkedin.com/in/... | Apollo |

---

**Contacts Flagged (Possible Job Change):**

| Contact | HubSpot Company | Current Company (per LinkedIn) | Action Needed |
|---------|-----------------|-------------------------------|---------------|
| [Name] | [Old Co] | [New Co] | Verify and reassign |

---

**Not Found / No Data Available:**

- [Name] ([email]) &mdash; No Apollo or LinkedIn match
- [Name] ([email]) &mdash; Email may be invalid
```

## Related reading
- [CRM Lead Enrichment Ai](https://cotera.co/articles/crm-lead-enrichment-ai.md)
- [AI Email Finder Sales Prospecting](https://cotera.co/articles/ai-email-finder-sales-prospecting.md)
- [AI Lead Enrichment Automation](https://cotera.co/articles/ai-lead-enrichment-automation.md)

