
Enter one campaign, one channel or one month of spend.
Ad spend for the period you are measuring.
Actions the campaign produced, such as orders.
Optional. Needed to judge whether the CPA pays.
Share of the order left after product and shipping cost.
CPA and CAC are not the same measure, so do not use them interchangeably. CPA is the cost of one action or campaign conversion, which is what this page works out. CAC is the fully loaded cost of winning an actual paying customer across all sales and marketing spend, including salaries, agency retainers and software. Use the customer acquisition cost calculator for that fuller figure. CAC is almost always the larger number.
Profit here is gross profit on the first order only, so it is indicative rather than an accounting figure. It ignores overheads, returns, discounts and payment processing, and it ignores everything a customer buys after the first order. Treat the result as a guide for pricing and bidding decisions rather than as a reconciliation of your books.
See how Mage helps Shopify brands lift repeat purchase rate with loyalty, referrals and store credit.
CPA stands for cost per acquisition, sometimes called cost per action. It is what you pay, on average, for one conversion from a campaign. The conversion can be a purchase, but it can equally be a signup, a lead form, a trial start or an app install, which is why the word action is the more accurate reading.
Divide total campaign spend by the number of conversions that spend produced. If you spent $5,000 and got 120 conversions, your CPA is $5,000 divided by 120, which is $41.67. Keep the spend and the conversion count over the same date range, or the number will be misleading.
CPA measures the cost of a single action or campaign conversion, using ad spend only. CAC measures the fully loaded cost of winning an actual paying customer, spread across every sales and marketing input including salaries, agency fees, software, creative production and discounts. A campaign can show a $41 CPA while your true CAC is $90, because CPA counts the media bill and CAC counts the whole department. Use CPA to judge a campaign and CAC to judge the business.
They measure three different points in the funnel. CPM is cost per thousand impressions, so it prices reach. CPC is cost per click, so it prices traffic. CPA is cost per acquisition, so it prices results. You can have a cheap CPM and a cheap CPC and still have a terrible CPA if the landing page does not convert, which is why CPA is the only one of the three that connects to profit.
There is no universal number, and any benchmark quoted without your order value attached is meaningless. A $60 CPA is excellent on a $400 order and catastrophic on a $30 one. The only useful test is whether your CPA sits comfortably below the gross profit on the order it produced.
Multiply your average order value by your gross profit margin. On an $85 average order at a 45% margin, each order carries $38.25 of gross profit, so $38.25 is your break-even CPA. Pay more than that and you lose money on the first order. Most brands set their real target somewhere below the ceiling, often 60% to 80% of it, so there is margin left over to cover overheads.
Whatever action you have chosen to optimise for, as long as you count it consistently. If you use purchases, CPA is your cost per order. If you use leads, CPA is your cost per lead and it will look far cheaper, because only a fraction of those leads will ever buy. Mixing the two across reports is the fastest way to produce a CPA that means nothing.
Target CPA is an automated bidding strategy in Google Ads, Meta and most other platforms where you name the CPA you want and the platform adjusts bids to try to hit it on average. Set the target too low and delivery collapses, because the system cannot find enough cheap conversions to spend the budget. Set it too high and you overpay. Your break-even CPA is the ceiling you should never set above.
Because you exhaust the cheapest audience first. Early spend reaches the people most ready to buy, and once that pool is saturated the platform has to bid into progressively colder audiences to place more impressions. This is why a campaign that looked superb at $200 a day can look ordinary at $2,000 a day, and why scaling decisions should always be judged on marginal CPA rather than the blended average.
Not usually. CPA is conventionally media spend divided by conversions, which keeps it comparable across campaigns and platforms. The moment you fold in retainers, production and tooling you are calculating CAC instead. Both are worth tracking, but keep them in separate columns so you always know which question you are answering.
Enormously. If the average customer buys three times, the gross profit you can spend against is three orders of profit, not one. On an $85 order at 45% margin, one order supports a $38.25 CPA but three orders support $114.75. This is why brands with strong retention can outbid competitors on the same keywords and still make more money, and it is the argument for judging acquisition against lifetime value rather than first order profit.
Usually because the CPA is being compared against revenue rather than gross profit, or because costs outside the campaign are not in the picture. Returns, discount codes, payment processing, shipping subsidies, salaries and software all sit outside CPA. A campaign can clear its break-even CPA comfortably and still leave the business short once those are paid.
Weekly is a sensible cadence for an active campaign, with a monthly view alongside it. Daily CPA is noisy on anything but very high volume, and reacting to a single bad day is how well performing campaigns get killed early. Give the platform enough conversions to learn before you judge the number.
Yes. No signup, no email, and no limit on how many campaigns you run through it. It is built by Mage Loyalty, a loyalty, referrals and store credit app for Shopify.
Mage is a loyalty, referral and store credit app built for Shopify. Reward repeat purchases, run VIP tiers, and give customers a reason to come back, without writing a line of code.