---
title: "Get ad campaign stats"
method: GET
path: "/campaigns/ads/{campaign_id}/stats/"
tags: ["campaigns"]
---

# Get ad campaign stats

`GET /campaigns/ads/{campaign_id}/stats/`

## Request

- Base URL: `https://api.hive.co/v2`
- URL: `https://api.hive.co/v2/campaigns/ads/{campaign_id}/stats/`
- Auth: HTTP bearer

Lifetime performance stats for a single Meta ad campaign. All figures are Meta-reported, served from Hive's cached stats. `stats` is null when insights have never been cached for the campaign.

## Path parameters

- `campaign_id` string, required

## Headers

- `X-Partner-Id` string, required

## Response `200`

- AdsCampaignStatsResponse
  - `campaign_id` string, required
  - `stats_refreshed_at` string, date-time, nullable, required
  - `stats` AdsCampaignStats, required: Versioned view over the cached Meta lifetime insights — the raw insights blob is never passed through. All figures are Meta-reported; ads have no Hive-attributed revenue sections (unlike email and SMS).
    - `spend` number, double
    - `impressions` integer
    - `reach` integer
    - `frequency` number, double
    - `clicks` integer
    - `unique_clicks` integer
    - `cost_per_click` number, double
    - `cost_per_unique_click` number, double
    - `click_through_rate` number, double
    - `results` integer
    - `cost_per_result` number, double
    - `meta_purchase_value` number, double
    - `meta_purchase_roas` number, double

## Other responses

- `404`: Campaign not found.

---

[API](https://skmtc.dev/hive-co/apis/hive-api.md) - [All operations](https://skmtc.dev/hive-co/apis/hive-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hive-co/apis/hive-api/revisions/aa145f089347?raw)
