New Customer Cost per Acquisition (NCPA)

Overview

New Customer Cost per Acquisition (NCPA) is the total advertising spend (including both channel ad spend and custom ad spend) divided by the total number of orders by new customers.

πŸ“˜

NCPA = (Ad Spend + Custom Ad Spend) / New Customer Orders

Detailed breakdown

The formula above is derived from the following components:

Ad Spend = SUM(spend) --> Ads table
Custom Ad Spend = SUM(IF(is_ad_spend, amount, 0)) --> Custom Spend table
New Customer Orders = count(1) orders --> Orders table

Insights and Actions

New Customer Cost per Acquisition (NCPA) measures the cost effectiveness of acquiring new customers through advertising. Optimizing NCPA enables more efficient marketing spending, directly contributing to sustainable business growth. Efficiently leveraging NCPA data can guide strategic business decisions:

  • Marketing Efficiency: Lower NCPA indicates cost-effective customer acquisition, guiding efforts to streamline marketing strategies.
  • Budget Allocation: Use NCPA insights to direct marketing budgets towards channels with the best customer acquisition cost efficiency.
  • Campaign Optimization: Evaluate campaign-specific NCPA to pinpoint and scale successful strategies, improving overall marketing ROI.
  • Targeting Refinement: High NCPA may signal the need for better targeting; analyzing successful acquisitions can help in reducing costs.
  • ROI Analysis: Comparing NCPA against customer lifetime value aids in assessing the long-term profitability of acquisition strategies.

Example Use

Prompt

What's my NCPA for October?

Response

Query

WITH
  orders AS (
    SELECT
      SUM(orders_quantity) AS num_orders
    FROM
      orders_table
    WHERE
      platform IN ('stripe', 'shopify', 'amazon')
      AND event_date BETWEEN '2023-10-01' AND '2023-10-31'
  ),
  ads AS (
    SELECT
      SUM(spend) AS spend
    FROM
      ads_table
    WHERE
      event_date BETWEEN '2023-10-01' AND '2023-10-31'
  ),
  custom_spendings AS (
    SELECT
      COALESCE(SUM(amount), 0) AS total_custom_spend
    FROM
      custom_spend_table
    WHERE
      event_date BETWEEN '2023-10-01' AND '2023-10-31'
      AND is_ad_spend = TRUE
  )
SELECT
  COALESCE(
    (
      ads.spend + COALESCE(custom_spendings.total_custom_spend, 0)
    ) / NULLIF(orders.num_orders, 0),
    0
  ) AS ncpa
FROM
  orders,
  ads,
  custom_spendings;