Free tool · no sign-up

CPA Calculator for Meta Ads: Cost per Purchase and Max CPA

Divide ad spend by purchases to get your CPA. Add your order value and margin to see the most you can afford per sale, whether each sale makes money, and what a budget buys.

Your cost per purchase

$
$

After product, shipping & fees

$

Optional

$

Optional

CPA

$30

Ad spend ÷ purchases

Profit per first order

$5

Under your max CPA of $35

Test stop line

$56

Spent 2× target CPA with no sale? It's a loser.

Sales this budget buys

≈ 166

At your current CPA

CPA (cost per acquisition) is what you pay in ad spend for each conversion. For an online store that conversion is usually a purchase, so CPA is your cost per purchase. This calculator gives you your CPA, the most you can afford to pay per sale, and what a budget buys at your current rate.

How to use this calculator

  1. Enter your ad spend for a period.
  2. Enter the number of purchases (conversions) in the same period.
  3. Optionally, add your average order value and contribution margin per order to see your maximum affordable CPA and whether each sale makes or loses money.
  4. Optionally, enter a budget to see how many sales it buys at your current CPA.

The formula

  • CPA = ad spend ÷ purchases
  • Max affordable CPA = contribution margin per order, meaning the price minus product cost, shipping, fees and other variable costs
  • Profit per sale after ads = contribution margin − CPA
  • Sales a budget buys = budget ÷ CPA

Your max CPA is the same as your break-even CPA. If you don't know your margin yet, the break-even ROAS calculator works it out from your price and costs.

Worked example

In rupees. ₹60,000 of spend brought 120 purchases, so CPA = ₹500. With a ₹1,400 average order and a ₹650 margin per order, max CPA is ₹650 and each sale leaves ₹150 after ads. At this CPA, a ₹1,00,000 budget buys about 200 sales.

In dollars. $3,000 of spend brought 60 purchases, so CPA = $50. With a $70 average order and a $40 margin, max CPA is $40 and each sale loses $10. A $5,000 budget buys about 100 sales at this CPA and loses about $1,000. Scaling this campaign would only lose money faster.

CPA vs cost per result

In Ads Manager, Cost per result is spend divided by results, and a result is whatever the ad set is optimised for. In a sales campaign optimised for purchases, that's your cost per purchase. In a traffic or engagement campaign it might be a link click or a post engagement, which tells you nothing about sales. Check the result type before comparing campaigns. The glossary explains cost per result in more detail.

Purchases are also counted within your attribution setting, so Meta's CPA and one worked out from your store's orders won't match exactly.

How to read your result

Below your max CPA, each first order is profitable after ads. Above it, you lose money on the first order. That can be acceptable if repeat purchases earn it back, which you can check against your customer lifetime value, but it should be a choice rather than a surprise.

Be wary of a CPA built on a handful of purchases. With 3 sales, a single extra order cuts CPA by a quarter. Wait for enough purchases to trust the number before you act on it.

How Autopilot uses your target CPA

Fly ROAS Autopilot works from the target CPA you set. Each test gets a 48-hour verdict, and by default a test that spends 2× your target CPA without a sale is stopped. You can set that stop line anywhere from 1.5× to 3×. At the default, a test with a ₹500 target that hasn't sold by about ₹1,000 of spend stops. With a $40 target, by about $80.

How to lower your CPA

CPA = CPC ÷ conversion rate, and CPC = CPM ÷ (1,000 × CTR). That gives you three levers:

  1. Raise CTR with stronger hooks and fresh creative. Test several angles at once and cut losers quickly. The 48-hour creative testing framework shows how.
  2. Raise conversion rate with a faster product page, clear delivery and return terms, reviews and a short checkout.
  3. Lower CPM with broader audiences and Advantage+ placements.

Average order value doesn't change CPA, but it raises your max CPA, which gives every ad more room. Fly ROAS also alerts you when cost per purchase spikes, so you can act before a bad week turns into a bad month.

Frequently asked questions

How do you calculate CPA?

Divide ad spend by the number of conversions: CPA = spend ÷ purchases. ₹60,000 of spend and 120 purchases is a ₹500 CPA, and $3,000 with 60 purchases is a $50 CPA.

What is a good CPA for Facebook ads?

A good CPA is one below your maximum affordable CPA, which equals the contribution margin on an order. If each order leaves you ₹650 after product, shipping and fees, any CPA under ₹650 is profitable on the first sale. Industry averages ignore your prices and costs, so work from your own margin.

What is the difference between CPA and cost per result?

Cost per result is Ads Manager's spend divided by whatever result the ad set is optimised for, which might be purchases, leads, link clicks or something else. It equals your CPA only when the result is the conversion you care about, such as a purchase. Check the result type before comparing campaigns.

How do I work out my maximum CPA?

Take your average order value and subtract product cost, shipping and packaging, payment fees and other variable costs such as returns. What's left is your contribution margin, which is also your break-even CPA. Subtract the profit you want per order to get the max CPA to aim for.

How can I lower my CPA on Meta ads?

CPA falls when CTR or conversion rate rises, or when CPM falls. Test new hooks to lift CTR, improve the product page and checkout to lift conversion rate, and give Meta broader audiences and more placements to find cheaper impressions. Stop ads that spend well past your target CPA without a sale.

Fly ROAS AI is an independent product and is not affiliated with, endorsed or sponsored by Meta Platforms, Inc. Facebook and Instagram are trademarks of Meta Platforms, Inc.

Let an AI media buyer fly your ads.

Fly ROAS learns your brand, studies what's winning for competitors and builds ads from your real product photos — then launches, tests and scales them inside the caps you set.