Skip to content
SourceLoop
Salesforce

How to map Salesforce Lead Status

Translate SourceLoop's internal lifecycle stages into Salesforce's Lead Status picklist values. Both directions, custom picklist values supported.

On this page
  1. Before you start
  2. How the mapping works
  3. Step 1: Open the Stage Mapping panel
  4. Step 2: Map each Salesforce Lead Status to a SourceLoop stage
  5. Step 3: Map Converted leads carefully
  6. Step 4: Verify the mapping is taking effect
  7. Mapping a custom Lifecycle Stage field (not Lead Status)
  8. Opportunity Stage (a separate flow)
  9. What’s next

Salesforce orgs use the Status picklist on the Lead object to track lead state (Open, Working, Converted, Unqualified, plus custom values your team has added). SourceLoop has its own internal lifecycle stages (New, Contacted, In Progress, Converted, Lost). This article walks through aligning the two so SourceLoop dashboards reflect your Salesforce pipeline and Salesforce records show the SourceLoop stage as data your reps can filter on.

Before you start

You’ll need:

  • Salesforce connected to SourceLoop
  • Admin or Owner role in SourceLoop
  • A list of your Lead Status picklist values (visible in Salesforce at Setup -> Object Manager -> Lead -> Fields & Relationships -> Lead Status)

How the mapping works

The Lead Status mapping is per-connection and bidirectional:

  • Inbound (Salesforce → SourceLoop): when a Lead is pulled in, SourceLoop reads its Status value (e.g., Working) and translates it to the matching SourceLoop stage (e.g., In Progress). The mapped stage drives funnel dashboards in SourceLoop.
  • Outbound (SourceLoop → Salesforce): when a SourceLoop contact’s stage changes (e.g., based on a Stripe payment), the mapping translates back to a Salesforce picklist value and updates the Lead’s Status field.

Step 1: Open the Stage Mapping panel

  1. Sign in to SourceLoop.
  2. Open Setup -> CRM -> Salesforce.
  3. Click the Stage Mapping tab inside the drawer.

The panel shows your Salesforce Lead Status values in the left column, each with a dropdown of SourceLoop stages on the right.

Step 2: Map each Salesforce Lead Status to a SourceLoop stage

A typical mapping for an org using Salesforce’s standard values:

  • Open - Not Contacted → New
  • Working - Contacted → Contacted
  • Closed - Converted → Converted
  • Closed - Not Converted → Lost

For an org with custom values (e.g., MQL, SQL, Working, Nurturing):

  • MQL → Contacted
  • SQL → In Progress
  • Working → In Progress
  • Nurturing → In Progress
  • Disqualified → Lost

For each row, pick the matching SourceLoop stage and the mapping saves automatically on selection.

Step 3: Map Converted leads carefully

Salesforce’s IsConverted flag is separate from Status — a Lead can be marked Converted via Lead conversion (which creates a Contact, Account, and optionally Opportunity) independently of its Status picklist value.

For revenue and funnel analytics in SourceLoop, the practical rule:

  • Map any Closed - Converted or Qualified Status values to SourceLoop’s Converted stage
  • Map any Closed - Not Converted, Disqualified, or Unqualified Status values to SourceLoop’s Lost stage
  • Leave any in-progress Status values mapped to In Progress so they appear in active funnel reports

Step 4: Verify the mapping is taking effect

  1. Wait 15 minutes for the next delta sync (or click Resync now on the Salesforce card).
  2. Open a Lead in SourceLoop’s Contacts Hub. Its Lifecycle stage should reflect the mapped Salesforce value.
  3. Update the Lead’s Status in Salesforce. Within 15 minutes the SourceLoop contact’s stage updates to match.

If the stage stays blank, see Troubleshoot Salesforce sync issues.

Mapping a custom Lifecycle Stage field (not Lead Status)

If your Salesforce org has a custom field like Lifecycle_Stage__c (some orgs add this to mirror HubSpot’s concept), SourceLoop can map to it instead of (or in addition to) the standard Status field.

  1. In the Stage Mapping tab, click Change target field.
  2. Pick your custom field (e.g., Lifecycle_Stage__c) from the dropdown of available picklist fields.
  3. Save.
  4. Map each picklist value the same way as in Step 2.

You can have both Status and Lifecycle_Stage__c mapped at once; SourceLoop writes both.

Opportunity Stage (a separate flow)

Opportunity Stage is not mapped via this panel. Salesforce Opportunities use multi-pipeline stage flows that vary by record type, and SourceLoop preserves your existing pipeline structure as-is, no per-stage mapping is needed.

On inbound sync, Opportunities flow into SourceLoop with their current Stage and pipeline. Funnel reports respect the Salesforce stage order automatically.

What’s next

If the mapping isn’t behaving as expected, the troubleshooting article walks through the common causes: Troubleshoot Salesforce sync issues.

Frequently asked questions

  1. Does Salesforce have a lifecycle stage field like HubSpot?

    Not natively. Salesforce's closest equivalent is the Lead Status picklist (`Status` field on Lead). Some orgs add a custom field like `Lifecycle_Stage__c` to mirror HubSpot's concept; SourceLoop can map to either. The Stage Mapping tab in the Salesforce drawer lets you pick which Salesforce field to use.

  2. My team uses Salesforce's standard Lead Status (Open, Working, Converted, Unqualified). Can I map to those?

    Yes, that's the most common case. SourceLoop's Stage Mapping panel pre-loads your org's Lead Status picklist values from Salesforce's Describe API, so you'll see exactly what your team uses (including any custom values).

  3. What about Opportunity Stage? Can SourceLoop map to it?

    Opportunity Stage is handled separately. SourceLoop pulls Opportunity records and their stages on inbound sync; the standard Opportunity stages flow into SourceLoop dashboards automatically. No manual mapping needed because Opportunities use Salesforce's own multi-pipeline stage flow, which SourceLoop preserves as-is.

  4. If my Salesforce admin adds a new Lead Status value, do I need to update the mapping?

    Yes. New picklist values appear in SourceLoop's Stage Mapping dropdown after the next properties cache refresh (every 24 hours, or after a manual reconnect). Map the new value to a SourceLoop stage and save.

  5. What happens if SourceLoop sees a Salesforce Lead Status I haven't mapped?

    The raw Salesforce value is preserved on the contact in `lead_status_raw`, but the mapped `lead_status_id` stays NULL. You can add the mapping later, and the next sync re-applies it.

  6. Can I map multiple Salesforce Lead Status values to the same SourceLoop stage?

    Yes. SourceLoop's stages are a fixed funnel (New → Contacted → In Progress → Converted / Lost) while Salesforce orgs often have many granular statuses. Mapping multiple Salesforce values to one SourceLoop stage (e.g., 'Working', 'Nurturing', 'Awaiting Response' all → 'In Progress') is the standard pattern.

Track every conversion to its true source

Capture and send full attribution data from every signup, lead, booking, and sale to your CRM and ad platforms, so you know exactly what's driving revenue.

Without SourceLoop

Untagged

Kayden Floyd

kayden@abc.com

  • SourceUnknown
  • MediumUnknown
  • CampaignUnknown
  • Landing pageUnknown
Journey
No touchpoints captured

With SourceLoop

Auto-tagged

Kayden Floyd

kayden@abc.com · Acme Co.

  • Channel Paid Social
  • CampaignFree_demo
  • Landing page/pricing
Journey
Synced to HubSpot Google Ads Meta