# CPA Formula: How to Calculate Cost per Acquisition

- URL: https://betteranalyst.com/metrics/cost-per-acquisition
- Published: 2026-11-02
- Updated: 2026-11-02
- Author: David Bressler, Founder (https://betteranalyst.com/authors/david-bressler)

> **Summary:** CPA = Ad spend ÷ Acquisitions, where an acquisition is whatever action you define: a lead, a trial, a sale. A solar installer that spent $47,000 and signed 45 contracts has a CPA of $1,044.44 per contract, even though its cost per lead is only $58.39.

Category: [Marketing](https://betteranalyst.com/metrics#marketing)

Cost per acquisition formula with a lead-gen example by campaign, the Excel formula, cost per lead vs cost per sale, and how to set a target CPA.

## Cost per acquisition (CPA) formula

```
CPA = Total ad spend ÷ Number of acquisitions (the defined conversion action)
```

- **Ad spend**: Media cost for the campaigns and period being measured.
- **Acquisitions**: Count of the specific action you are paying for: leads, booked calls, signed contracts or purchases. Name it every time you report CPA.

## How to calculate cost per acquisition (CPA) in Excel and Google Sheets

Excel, using the cells in the worked example below:

```
=SUM(B2:B4)/SUM(D2:D4)
```

## Worked example

A residential solar installer runs three lead sources and wants cost per lead and cost per signed contract to reallocate next quarter's budget.

*Last quarter by lead source (table starts in cell A1)*

| Lead source | Spend | Leads | Signed contracts |
| --- | --- | --- | --- |
| Google Search | $22,400 | 320 | 28 |
| Meta lead forms | $15,600 | 410 | 13 |
| Local radio | $9,000 | 75 | 4 |

1. Total spend = $47,000; total leads = 805; total contracts = 45.
2. CPA per signed contract = 47,000 ÷ 45 = $1,044.44.
3. Cost per lead = 47,000 ÷ 805 = $58.39. Meta looks cheapest per lead ($38.05).
4. Per contract (=B2/D2 filled down): Google $800, Meta $1,200, radio $2,250. Meta's cheaper leads close at 3.2% versus Google's 8.8%.

**Result:** $1,044.44 CPA per signed contract

## How to interpret cost per acquisition (CPA)

CPA is only as useful as the action it counts. Cost per lead rewards cheap, low-quality leads; cost per sale or signed contract reflects what the business needs. Set a target CPA from economics: the gross profit of an average sale (or the lifetime value of a customer) caps what you can pay. If an installed system yields $4,000 of gross profit, a $1,044 CPA leaves room, while radio at $2,250 per contract is borderline once sales salaries are added.

## Common mistakes

- Optimising campaigns on cost per lead when lead quality varies by source. Track CPA to the revenue event.
- Changing the conversion definition mid-quarter, which makes CPA trends meaningless.
- Attributing contracts with long sales cycles to the month they closed, while spend sits in earlier months.
- Excluding the cost of handling leads. Sales time spent on poor leads is real cost; that's what fully loaded CAC captures.

## Calculate cost per acquisition (CPA) with Better Analyst

Connect your data or upload a spreadsheet, then ask in plain English. Better Analyst writes and runs the calculation and shows the steps, so you can check the number.

- “Calculate cost per lead and cost per signed contract by source for last quarter.”
- “Which campaigns have a cost per lead below average but a cost per sale above average?”
- “Set up a weekly report of CPA by channel sent to Slack every Monday.”

Usually calculated from: [Google Sheets](https://betteranalyst.com/data-connectors/google-sheets), [Airtable](https://betteranalyst.com/data-connectors/airtable), [Google Analytics](https://betteranalyst.com/data-connectors/google-analytics), [Google BigQuery](https://betteranalyst.com/data-connectors/bigquery), [PostgreSQL](https://betteranalyst.com/data-connectors/postgresql).

[Try Better Analyst free](https://betteranalyst.com/signup)

## Further reading

- [Customer acquisition cost formula](https://betteranalyst.com/metrics/customer-acquisition-cost)
- [ROAS formula](https://betteranalyst.com/metrics/roas)
- [Connect Airtable](https://betteranalyst.com/data-connectors/airtable)
- [Scheduled tasks](https://betteranalyst.com/product/scheduled-tasks)
- [Better Analyst for agencies](https://betteranalyst.com/solutions/agencies)

## Frequently asked questions

### What is the difference between CPA and CPL?

CPL (cost per lead) divides spend by leads. CPA divides spend by whatever acquisition you define, often a sale. In the example CPL is $58.39 and CPA per contract is $1,044.44.

### How do I set a target CPA?

Start from the gross profit of one acquisition (or customer lifetime value), then decide how much of it you're willing to spend to acquire it. Many teams target a CPA well below that ceiling to leave room for sales costs and profit.

### How do I calculate CPA in Excel?

Divide spend by acquisitions: =B2/D2 for one row, =SUM(B2:B4)/SUM(D2:D4) for the total. Use IFERROR to handle rows with zero acquisitions.

## Related metrics

- [How to Calculate CAC: Customer Acquisition Cost Formula](https://betteranalyst.com/metrics/customer-acquisition-cost)
- [ROAS Formula: How to Calculate Return on Ad Spend (Excel)](https://betteranalyst.com/metrics/roas)
- [Conversion Rate Formula: How to Calculate Conversion Rate](https://betteranalyst.com/metrics/conversion-rate)
- [Click-Through Rate Formula: How to Calculate CTR (Excel)](https://betteranalyst.com/metrics/click-through-rate)
- [CPM Formula: How to Calculate Cost per Thousand Impressions](https://betteranalyst.com/metrics/cpm)
