Vector integrates seamlessly with Salesforce to enrich your CRM with contact-level data, helping your team connect anonymous website visitors, qualify high-intent accounts, and drive timely outreach. This guide covers how the integration works, what data syncs where, and how to control every step of the process.
A single Salesforce user (typically an admin or integration user) connects Vector to your Salesforce instance via OAuth. This connection handles all syncing across your organization — individual users do not need to log in with their own credentials.
To connect Salesforce to your Vector workspace:
Navigate to the bottom left corner. Integrations → Salesforce
Click Connect Salesforce
You’ll be redirected to log in via your Salesforce credentials
✅ Once logged in, your Salesforce instance is securely connected to Vector.
✅ Only one connection is needed:
💡 Simply connecting Salesforce does not automatically start syncing any data. Data only flows to Salesforce when you explicitly add a Salesforce action to a segment — giving you full control over what is sent, and when.
Vector is primarily a one-way integration (Vector → Salesforce) — but with limited data pulling from Salesforce → Vector to support segmentation:
✅ Pushes to Salesforce: Vector can enrich Leads, Contacts, and Accounts and optionally log Tasks
✅ Pulls from Salesforce: Vector can public Account Lists using saved views to support CRM-aligned segmentation (e.g. pulling in Account Name, Owner, Stage)
❌ Vector does not scan, enrich, or modify existing Salesforce records unless explicitly configured via segment actions
❌ Account Lists are read-only — Vector does not push enriched data back to those records
🔄 So while the integration includes some limited pulling of account data, it’s not a full bi-directional sync in the traditional sense.
Enriched data may include:
First Name, Last Name
Job Title, Company Name, Company Domain
LinkedIn URL, Mobile Phone Number
Company Size, Seniority, Department, Industry
Segment metadata (Segment Name, Segment ID, Last Active Timestamp, etc.)
No scanning or importing of existing Contacts, Leads, or Accounts
No enrichment or modification of your existing CRM records
Data is only pushed when a segment includes a Salesforce sync action
You control how Vector interacts with Salesforce across three objects:
Leads and Contacts (grouped in settings)
Accounts
Tasks (optional activity creation)
In the Salesforce integration settings, Leads and Contacts are managed in a shared section — meaning sync behavior is configured together, but each object has its own independent toggle.
Update existing leads – Update Lead records matched by name + company
Create leads – Create new Leads if no match is found
Update existing contacts – Update Contact records matched by name + email
Create contacts – Create new Contacts if no match is found
✅ You can turn each of these on or off based on how your CRM is structured and whether you work primarily in Leads, Contacts, or both.

Account sync is configured separately and provides the same flexibility:
Update existing accounts – Based on name + domain
Create new accounts – When no match is found
📌 Tip: Account sync is commonly used in ABM workflows to enrich known accounts with segment and intent data.

Vector can optionally create a Salesforce Task each time a visitor is identified via Contact, Lead, or Account.
Create new activity – Enables automatic creation of task records based on visit or intent triggers
This is helpful for logging activity, triggering automations, or alerting sales teams of high-intent behavior.

Example in Salesforce:
When a task is pushed, you’ll see a record like this in Salesforce:

In Vector, you can control which fields get synced to Salesforce and where they land — at the Lead, Contact, or Account level. Each object has its own tab, and you can define mappings independently per object.

Vector provides a set of core enrichment fields that can be mapped directly to their corresponding Salesforce fields. These include:
First Name
Last Name
Company Name
Company Domain (mapped to Website)
Title
These are typically pre-selected for you and can be adjusted as needed. They are available across Leads, Contacts, and Accounts, depending on how your sync is set up.
Vector supports dynamic field mapping using structured variables when you select "Custom Value" as the data source.
Variable | Description | Why It’s Helpful |
| The ID of the segment | Useful if you want a unique identifier for reporting or syncing back to systems. |
| The name of the segment | Great for dashboards or reporting — you’ll always know which play or segment sourced a contact, especially if you name segments meaningfully. |
| Full timestamp of the last visit (e.g., 2025-03-05T18:01:03.735Z) | Shows exactly when a person last engaged, helpful for assessing freshness of intent. |
| Date of the last visit (e.g., 2025-03-05) | Lets reps quickly see if a visit was recent and worth acting on. |
| Time of the last visit (e.g., 18:01) | Adds precision on activity — valuable for context around engagement patterns. |
| Full timestamp of the first visit (e.g., 2025-03-05T18:01:03.735Z) | Shows when initial interest began, useful for understanding buying journey. |
| Date of the first visit (e.g., 2025-03-05) | Helps establish how long someone has been engaging with your site. |
| Time of the first visit (e.g., 18:01) | Useful for noticing patterns (like early morning vs. end-of-day browsing). |
| Page URL of the first visit | One of the most impactful fields: reveals what first caught a prospect’s eye. You wouldn’t say “I saw you visited X page” directly, but you can use it to frame conversations around relevant pain points or interest areas. |
| Accesses UTM properties from the first page view. Valid names: | Helps tie web activity back to campaigns or ads, making attribution clearer and guiding which marketing channels are driving engagement. |
Example in Salesforce:
When a task is pushed, you’ll see a record like this in Salesforce:


Vector can capture the very first page a contact or lead landed on and any UTM parameters tied to that visit. You can map these directly into Salesforce fields for cleaner attribution and campaign reporting.
Custom Value | What it captures |
{{firstPageViewWithUtm.utmSource}} | UTM source such as google or linkedin |
{{firstPageViewWithUtm.utmMedium}} | UTM medium such as email, cpc, social |
{{firstPageViewWithUtm.utmCampaign}} | UTM campaign name |
{{firstPageViewWithUtm.utmContent}} | UTM content identifier |
{{firstPageViewWithUtm.utmTerm}} | UTM term or keyword |
{{firstPageViewWithUtm.pageUrl}} | Full URL of the first landing page |
{{firstVisitDate}} | Date of the first visit |
{{firstVisitTimestamp}} | Full timestamp of the first visit |
{{lastVisitDate}} | Most recent visit date |
{{lastVisitTimestamp}} | Full timestamp of the most recent visit |
How to map them in Salesforce
Create custom fields on the Lead or Contact object (and optionally Account) such as Vector UTM Source, Vector First Page URL, and Vector First Visit Date.
In Vector, go to your segment and add a Salesforce action.
Choose “Custom Value” as the data source and paste the variable (for example, {{firstPageViewWithUtm.utmSource}}).
Select the Salesforce field you created.
Save your segment and test with a UTM-tagged visit.
Use Cases
Report on campaign performance directly inside Salesforce.
Route leads based on first-touch channel or page (for example, /pricing visits go straight to sales).
Improve lead scoring models with time-based engagement such as recent UTM campaign traffic.
✅ You can create custom fields in Salesforce (e.g. Vector Segment Name, Last Visit Date) and map Vector variables into them
✅ Each field can be mapped to a specific object (Lead, Contact, or Account) depending on your use case
❌ You cannot freely map any Vector data field (like Job Title or Industry) to a custom Salesforce field
❌ You cannot configure separate field mappings per object for the same Vector field (e.g., one value to Leads, another to Contacts)
❌ There is no drag-and-drop field mapping UI — mappings are value-based via "Custom Value"
You can bring in your Salesforce Account Lists using a public Salesforce view list. This powers CRM-aligned segmentation inside Vector.
Pulls in Account name, owner, stage, and deal fields (if applicable)
Syncs every 24 hours
Does not push data back to Salesforce — it’s only used for segmentation
Curious how to add account lists? Guide here.
Each record creation or update counts as an API call in Salesforce. This includes:
Contact/Lead enrichment
Account updates
Task creation
💡 Use Audience Estimate in Vector to preview volume before syncing — especially useful if you're near daily API limits.
Object | Type | Create | Update | Matching LogicNotes |
Lead | Optional | Optional | Name + Company | Controlled via shared Lead/Contact panel |
Contact | Optional | Optional | Name + Email | Controlled via shared Lead/Contact panel |
Account | Optional | Optional | Name + Domain | Managed separately |
Task | Optional | N/A | Based on visit or match | Optional activity log |
Field Mapping | N/A | N/A | N/A | Only via |
Need help configuring your sync settings or testing your mappings? Let us know — we’re happy to help.