Overview
Connecting Reddit Ads lets the dashboard:- Create, update, pause, resume, and delete campaigns and ad groups.
- Upload image and video media into the connected ad account.
- Create ads (including promoted-post format) that reference an uploaded post and media.
- Pull spend, impressions, clicks, conversions, and conversion value from Reddit’s reporting endpoint.
- Run creative experiments by rotating multiple ad groups under one campaign with shared targeting.
Prerequisites
Before connecting, make sure you have:- An active Reddit Ads account in good standing.
- An OAuth-enabled Reddit application configured for the dashboard’s redirect URI, with OAuth credentials configured by your administrator.
OAuth scopes
The connection requests the following scopes:ads_read covers list and report operations; ads_manage covers all create / update / delete writes.
Connect
- Open the Paid UA → Integrations page in the dashboard.
- Click Connect on the Reddit Ads tile.
- Sign in with the Reddit account that has access to your ads accounts.
- Approve the requested scopes.
- After redirect, the dashboard probes
/me/accountsto confirm access and stores the connected account id.
https://www.reddit.com/api/v1/access_token.
What happens behind the scenes
Every write request carries an
Idempotency-Key HTTP header so retries do not produce duplicate resources, even if the platform connection drops mid-request.
Rate limiting
Requests are rate limited. If the platform reports HTTP 429, the request is automatically retried with exponential backoff.Reporting
Metrics are pulled hourly (or on demand) from Reddit’s reports endpoint. Default breakdown isdate,campaign_id; default metrics are spend,impressions,clicks,conversions,conversion_value.
Spend is converted from native currency to USD on ingestion. The native currency, the FX rate used, and the local-currency spend are kept alongside the USD value for downstream analytics.
Experiments (multi-ad-group rotation)
Reddit does not expose a native experiment primitive. The dashboard maps experiment variants onto multiple ad groups under a single campaign that share targeting, with each variant carrying its own creative. The control variant ships active; treatments ship paused until the experiment runner toggles them. Per-variant performance is read back from the reports endpoint withbreakdowns=ad_group_id.
Live write access
Live write access is enabled by AppDNA for your account. Until it is enabled, write operations are not sent to Reddit.Disconnect
Click Disconnect on the integration tile. The OAuth refresh token is removed from the dashboard. To fully revoke access, also remove the third-party app authorisation from your Reddit account preferences.Troubleshooting
- “Reddit Ads /me/accounts returned 401” — the OAuth token has been revoked or has expired without a valid refresh token. Re-connect the integration.
- “Reddit Ads create_campaign: 429 — …” — your account’s per-minute API quota was breached. The dashboard backs off automatically; if the error persists, lower campaign-mutation frequency.
- “webhooks not supported on reddit_ads” — Reddit Ads has no webhook surface. State changes are detected via the hourly metrics-sync job instead.
- Writes are not reaching Reddit — live write access is enabled by AppDNA for your account. Contact AppDNA support if writes are not taking effect.

