Skip to content New SourceLoop MCP: chat with your attribution data in Claude, ChatGPT & Cursor
SourceLoop
CRM

How to Import Offline Conversions and Sales for Attribution

Import offline sales, phone and walk-in leads, and lead updates from CSV or Excel, and credit each one to the campaigns and visits behind the person.

On this page
  1. What you can import
  2. Option 1: Upload a file
  3. Option 2: Add a record by hand
  4. How rows are matched
  5. Manage uploads
  6. What’s next

Some of your best results never touch your website: a deal closed over the phone, a walk-in customer, a trade show lead, or an invoice in a tool SourceLoop doesn’t connect to. Offline data brings them in and credits them to the visits and campaigns behind each person, so your reports show the whole picture.

What you can import

  • Sales: invoices, paid jobs, or closed deals, with their amount and date
  • Leads: walk-ins, trade show contacts, untracked calls
  • Updates: changes to leads you already have, such as quality (Good, Not a fit, Spam), lead value, stage, or status

Option 1: Upload a file

  1. Open Setup in the left sidebar, then Data sync, and choose the Offline data tab.
  2. Click Import, then Import a file. CSV and Excel (.xlsx) work, up to 20 MB.
  3. Choose what each row is: Sale, Lead, or an update. Download the matching template if you’re starting from scratch.
  4. Check the columns. SourceLoop matches them by their header, so the order doesn’t matter. Pick a column for anything it didn’t match.
  5. Check the rows. The preview shows how many rows are new, changed, or unchanged, who they match, and any problems.
  6. Import.

Rows apply in the background and appear in your reports as they go.

Option 2: Add a record by hand

For a single sale or lead, click Import, then Add a sale or Add a lead. Enter who it was, the date, and the amount. A sale is credited to that person’s visits straight away.

How rows are matched

Each row is matched to a person by SourceLoop lead ID, visitor ID, email, or phone, in that order. When the person has visited your site before, their sale or lead is credited to those visits, so the campaign that brought them in gets the credit.

When a row matches nobody, SourceLoop creates a new person for sales and leads. These show as Known, no visits in the preview. If your file has a “How did you hear about us?” column, map it, and those people are credited to the source they named.

Manage uploads

Each source on the Offline data tab lists its Uploads. Open one to see the rows imported and any not imported, with the reason. Undo withdraws the sales and leads an upload added: sale amounts come out of your revenue, and leads leave your reports and are withdrawn from ad platforms.

What’s next

Frequently asked questions

  1. What does each row need?

    Something to find the person by, an email, a phone number, a visitor ID, or a SourceLoop lead ID, plus a date. Sales also need an amount. Rows missing these are listed as problems instead of being guessed.

  2. What if I upload the same file twice?

    Nothing changes. Rows are matched by their order or record ID, or by who, when, and how much, so a second upload of the same rows adds nothing.

  3. Do imported sales go to my ad platforms?

    Yes, through your conversion syncs, if the sale is recent enough for the platform to accept. Meta takes up to 7 days and Google up to 90.

  4. Will importing old data trigger alerts or CRM updates?

    No. Imports never trigger alerts, outgoing webhooks, CRM updates, or lead quality rules, so loading a year of history won't flood anyone's inbox.

  5. Can I undo an import?

    Yes, for sales and leads. Undo an upload and the rows it added are withdrawn from your reports and ad platforms. Updates to existing leads can't be undone.

  6. Can I connect a Google Sheet instead of uploading files?

    Google Sheets is on its way. Until it is switched on for your workspace, download the sheet as CSV or Excel and upload that file.

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