Customer profitability analysis: joining ERP, CRM and support data step by step

Run a customer profitability analysis by taking revenue and direct cost from the ERP, adding cost to serve from CRM activity and support tickets, and ranking contribution margin by customer. The join also shows a fractional CFO how many systems and years a client keeps, a fit signal that stays inside the company.

How do you run a customer profitability analysis?

Calculate each customer's revenue, subtract the cost to serve it, and rank the result. Revenue and direct cost come from the ERP or accounting system, cost-to-serve drivers come from CRM activity and support tickets, and the join key is a clean customer ID. The work is mostly data preparation, and doing it shows a fractional CFO how many systems and years a client really has.

This guide is for fractional and outsourced CFOs doing the analysis for B2B clients. It covers the model, the join, the traps, and how to note the number of systems and years as a fit signal. All customer-level data stays inside the company; nothing about individual customers is shared with anyone else.

What inputs does the analysis need?

InputSourceWhat it contributes
Invoiced revenue by customer and periodERP or billingTop line
Cost of goods or direct delivery costERP, project accountingGross margin
Discounts, credits and write-offsERP, billingMargin leakage
Sales and account management effortCRM activity, time trackingAcquisition and retention cost
Support tickets and hoursHelp deskCost to serve
Implementation or onboarding hoursProject toolsOne-time cost
Payment timingAR ledgerWorking capital cost

Steps to build it

  1. Create a customer master. Match IDs across ERP, CRM and help desk. Merge duplicates and parent-child accounts.
  2. Choose the period. Use at least twelve months; use more where contracts or seasons are long.
  3. Allocate direct cost. Use job or project costing where it exists; otherwise allocate by drivers such as units or hours.
  4. Allocate cost to serve. Use tickets handled, support hours, account manager time and meeting counts as drivers.
  5. Compute contribution margin by customer. Revenue minus direct and cost-to-serve allocations.
  6. Rank and band. Group customers into profitable, marginal and unprofitable bands; look at size, product mix and tenure.
  7. Test the finding. Share with the account owner before concluding anything; context matters.

An Excel or spreadsheet version works for under a few hundred customers. Beyond that, put the model in the reporting tool the client already uses.

How should you present the results?

Lead with a one-page summary: the share of customers in each band, the contribution margin of the top and bottom deciles, and three actions the owner can take, such as repricing, minimum order terms or a support tier. Put the allocation method and data period in a footnote so the reader can challenge it. Offer a second view by segment and tenure, because averages hide the accounts that are expensive only in their first year. Agree with the owner which customer names appear in any board material before it circulates.

What are the common mistakes?

MistakeWhy it hurtsFix
Customer IDs differ across systemsRows drop out of the joinBuild and maintain a mapping table
Allocating all overhead by revenueHides expensive small accountsUse activity-based drivers
Judging on one periodOnboarding costs distort year oneShow tenure cohorts
Ignoring parent-child accountsUnderstates real customer sizeRoll up to the ultimate parent
Firing unprofitable customers without contextSome are strategic or growingReview with sales and operations first

What does the join reveal about the client's records?

When you join ERP, CRM and help desk, you learn how many systems exist, how many years each covers, and whether older versions were archived. Companies where ticket histories link to accounts, accounts link to deals and deals link to invoices hold a connected record of how work was done and what it earned. That connection is what gives records value to AI buyers; for the support side see licensing customer support data for AI.

Record the observations only. You do not need to read, export or describe tickets, emails or invoices.

  • The company had 50+ full-time employees at peak (contractors excluded).
  • At least three connected systems carry several years of data.
  • Older systems were archived, not deleted.
  • The company created the records and customer contracts do not bar licensing.
  • An authorized sponsor (owner, CEO, CFO or authorized representative) exists.

Run the same list through the company fit checker. The who qualifies page states the full baseline.

What privacy and contract issues come with customer-level data?

Customer-level data has commercial and personal elements. Customer contracts may restrict how a supplier uses information about the customer relationship, and support tickets can contain personal data from the customer's staff.

SituationWhat to checkTypical outcome to confirm
Tickets containing end-user personal dataPrivacy notices, contract termsDe-identification agreed first
Customer confidentiality clausesWhether records about the customer are coveredMay need consent or exclusion
Data processor rolesWhether the client only processes for customersRecords likely belong to the customer
Consumer-heavy customer baseLicensing basis for personal dataOften not a fit

The company and SourceX settle these in the rights review. A partner only makes the introduction.

How to raise the introduction

Wait until the analysis is delivered and discussed, then ask permission.

If the owner agrees, share your referral link or submit basic company details through the referral form. The company works directly with SourceX. Before the owner commits, who can sign a data license is a useful question to settle. If the client is moving to a new platform, read about what happens to legacy history in an AI-native ERP and preserve exports first. The forecasting guide and churn analysis guide cover related work.

How do rewards work?

Partners earn 25% of the eligible platform fees SourceX actually collects from the referred company's licensing deals, capped at $100,000 cumulative per referred company. The reward is payable only after the buyer pays and SourceX receives its fee; no reward is guaranteed. It is never deducted from what the company receives. Your engagement letters and any professional rules on referral fees and disclosure come first; the program terms set out the rest. For the broader context see the fractional CFO overview and the CAS growth guide.

When to skip it

  • The customer base is mostly consumers with no licensing basis for their personal data.
  • The client acts mainly as a processor on behalf of customers, so records belong to them.
  • Systems are new and history is under two years.
  • The data was already licensed for AI training.

Next step

After the next profitability project, write down the systems joined and their year ranges. If the picture is deep and the owner is open, register as a partner and make the introduction.

  1. Step 1Share your linkSend your personal link to a company you know.
  2. Step 2Company appliesThe company applies itself at /apply.
  3. Step 3Buyer selects and paysThe buyer selects and pays for the data and SourceX receives its fee.
  4. Step 4You get your rewardYour share of SourceX fees becomes payable.

Common questions

How many months of data does a profitability analysis need?

At least twelve months, and longer where contracts, seasons or onboarding cycles are long. Show tenure cohorts so first-year onboarding costs do not make new customers look worse than mature ones. Always state the period and the cost allocation method alongside the ranking.

Is customer-level data ever shared with SourceX by the partner?

No. All customer-level data stays inside the company. Partners share only basic fit information, such as company size, years in operation and system types. If the company proceeds, it works directly with SourceX, and redaction rules are agreed before any work begins.

What if customer contracts forbid sharing information about the relationship?

Then those records may be excluded or require consent. The company and SourceX review rights before anything is delivered. If most records are covered by such clauses and consent is unlikely, the company may not be a practical fit for licensing.

Does an unprofitable customer list make a company less attractive?

No. Buyers care about records of real work with outcomes, not whether each customer was profitable. Profitability is a separate management question. Depth of connected records, rights to license and an authorized sponsor matter more for a licensing introduction.

Can I run the analysis without a help desk system?

Yes. Use account manager time, meeting counts or project hours as cost-to-serve drivers, and say which drivers you used. Without a ticketing history the client may show fewer connected records, which is relevant if you later screen the company for fit.

Free resources

By SourceX Partnerships Team · Published 2026-10-09 · Updated 2026-10-09

Know a US company with valuable proprietary data?

Become a referral partner from anywhere we support, get your link and introduce an owner or authorized decision-maker.

Refer a company →

I own a business

Explore licensing your company's data to AI developers worldwide. Start a short assessment; no uploads needed.

Start an assessment