← All integrations
Salesforce → Pardot

Salesforce Pardot integration

In short

A Salesforce to Pardot integration keeps CRM records and marketing prospects in step: leads and contacts become Pardot prospects, campaign membership and opportunity data flow back for closed-loop reporting, and field-level sync behaviour decides which system wins on each conflict. The native connector handles the standard case. A managed pipeline earns its place when you need non-Salesforce data (product usage, billing, support) driving segmentation, custom matching beyond email, or multiple business units kept clean - built as an idempotent, EU-hosted pipeline instead of a queue nobody owns.

What a Salesforce to Pardot integration actually does

Salesforce is where the deal lives: the account, the owner, the opportunity, the fact that a lead just converted to a contact. Pardot - now branded Marketing Cloud Account Engagement - is where the nurture lives: the prospect record, the score and grade, the Engagement Studio program, the campaign they last engaged with. Marketing needs CRM reality to segment and score; sales needs marketing engagement to prioritise. The integration is what keeps those two pictures of the same person from drifting apart.

The native v2 connector does the obvious part of this well. The work that remains - and the reason a managed pipeline exists - is everything the connector cannot express: matching beyond email, data that never lived in Salesforce, and multiple business units that have to stay clean.

What data moves

Salesforce object / eventBecomes in PardotNotes
Lead / ContactProspect (create or update)Matched on CRM ID, not email; field mapping per your rules
Lead-to-Contact conversionProspect re-parented to the contactMust not create a second prospect or orphan history
AccountProspect account + firmographic fieldsDrives account-based segmentation and grading
Campaign & Campaign MemberPardot campaign + list membershipConnected Campaigns keeps a single campaign of record
OpportunityLinked to prospect for closed-loop ROIFeeds campaign influence and pipeline reporting
Owner / UserProspect assigned userAssignment must respect the correct business unit
Opt-out / Do-Not-EmailProspect opt-out stateSynced in the direction you specify, honoured both sides
Non-CRM data (usage, billing, support)Prospect custom fieldsThe data the connector alone can never see

Field mappings, matching keys, and the direction each field syncs are agreed once and encoded in the pipeline. After that, nobody re-maps them by hand.

The details that break naive syncs

The native connector gets you a long way and then leaves a specific, expensive set of edges on your desk:

How we build and run it

We treat this as a pipeline, not a one-off migration. Records and events are read from Salesforce (by change event or on a schedule), matched on their stable CRM ID, transformed into your agreed Pardot field mapping, and written through the Pardot API - alongside the native connector where it already does the job, not fighting it.

The pipeline is idempotent: every record carries a stable identifier, so a retry or a re-run never spawns a duplicate prospect or re-fires an automation. It runs on cloud-native, fully EU-hosted infrastructure, so prospect and lead data stays in the EU - which keeps the DPA / AVV and your GDPR obligations clean.

Then we keep it running. Monitoring, alerting, incident response, and watching for Salesforce and Pardot API changes - including the ongoing Account Engagement rebrand and API version deprecations - are our responsibility under contract. You get a named owner and an SLA, not a queue somebody has to remember to unblock.

When this integration is worth building

If the native connector covers you - standard lead and contact sync, campaign members, opportunities for reporting - use it, and we will tell you so rather than sell you a pipeline you do not need. The managed pipeline earns its place when non-Salesforce data has to drive segmentation and scoring, when email-based matching is producing duplicates you clean up by hand, when multiple business units make assignment a recurring mess, or when a consent or sync-behaviour mistake has already emailed the wrong person. At that point the question is not whether to integrate, but who owns it when it breaks.

Frequently asked questions

Doesn't the native Salesforce-Pardot connector already do all of this?
For the standard case - leads and contacts syncing to prospects, campaign members, and opportunities flowing back for reporting - the v2 connector is genuinely good and you should use it. We are not here to replace it. We build the pipeline that runs alongside it: feeding data Pardot has no other way to see, enforcing matching rules the connector cannot express, and reconciling business units. If the native connector covers you, we will say so.
How do you stop duplicate prospects and control which record matches which?
Pardot matches on email address by default, which creates duplicates the moment a person changes jobs or appears under two addresses. We match on the Salesforce CRM ID as the stable key and treat email as a mutable attribute, so a lead-to-contact conversion or an email change re-parents the existing prospect instead of spawning a second one. Where you need fuzzy or account-based matching, that logic lives in the pipeline, not in a spreadsheet.
Can you push data into Pardot that does not live in Salesforce?
Yes, and this is usually the real reason to build a pipeline. Product-usage events, billing status, support-ticket signals, or NPS scores rarely sit in Salesforce, but they are exactly what makes segmentation and scoring useful. We land that data on the matching prospect via custom fields so Engagement Studio and scoring can act on it, without you having to first round-trip everything through CRM objects.
We run multiple Pardot business units - can you keep them straight?
Yes. Multiple Account Engagement business units mapped to one Salesforce org is where prospect assignment, user sync, and opt-out state get tangled. We route each record to the correct business unit based on your rules (region, product line, brand), keep the connector user and prospect assignment consistent, and make sure a prospect does not leak across units or get double-counted.
Is prospect data GDPR-compliant and where does it run?
The pipeline runs on cloud-native, fully EU-hosted infrastructure, so prospect and lead data never leaves the EU in transit through our system. Opt-out and Do-Not-Email state is synced deliberately in the direction you specify so a consent withdrawal in one system is honoured in the other. You get a DPA / AVV and a named owner, not a script running in someone's personal org.

Need this integration built and permanently operated? Tell us which systems connect and what data has to move. Fixed-price scoping quote within 48 hours.

Request a scoping call