← Back to Learn
Learn / Webhooks / Inbound

Setting Up Inbound Analytics Webhooks

Configure inbound webhooks so your publishing platforms automatically send performance analytics back to ACS for unified tracking.

Updated April 8, 2026


Inbound analytics webhooks allow your publishing platforms to push performance data directly to ACS. Instead of ACS polling for data, the platform notifies ACS whenever new analytics are available — reducing lag and supporting platforms that don't offer API-based analytics pulls.

How Inbound Webhooks Work

  1. ACS generates a unique inbound webhook URL for each of your analytics sources
  2. You configure that URL in your publishing platform's webhook or notification settings
  3. When the platform has new analytics data, it sends a POST request to your ACS webhook URL
  4. ACS receives and processes the data, updating your Analytics dashboard

Getting Your Inbound Webhook URL

Step 1: Open Integrations

Go to Settings → Integrations in ACS. Under the Analytics Sources section, find the platform you want to configure.

Step 2: View the Webhook URL

Click View Webhook or Set Up Analytics next to the platform. ACS will display your unique inbound webhook URL:

  • With proxy (recommended): https://your-proxy-url.com/in/{token}
  • Direct fallback: https://your-supabase-url/functions/v1/receive-analytics-webhook?platform={platform}&user_id={id}

Copy this URL — you will paste it into your publishing platform.

Step 3: Note Your Verification Secret

ACS also displays an analytics webhook secret. If your platform supports HMAC signing for webhook payloads, enter this secret in your platform's webhook configuration to enable signature verification.

Configuring Your Platform to Send to ACS

Beehiiv:

  1. In Beehiiv, go to Settings → Integrations → Webhooks
  2. Add a new webhook endpoint with your ACS inbound URL
  3. Select the analytics events to forward (sends, opens, clicks)

Ghost:

  1. In Ghost Admin, go to Settings → Integrations → Add custom integration
  2. Under webhooks, add your ACS inbound URL for post.published and relevant analytics events

Other platforms: Look for "Webhooks," "Integrations," or "Notifications" in your platform's settings. ACS accepts standard JSON POST requests to the inbound URL.

Supported Analytics Fields

ACS accepts the following fields in inbound webhook payloads. All fields are optional — ACS will process whatever is provided:

Field Description
source Platform identifier (newsletter, blog, twitter, linkedin, etc.)
content_title Title of the content piece
content_url Published URL of the content
week_of ISO date string for the reporting week
impressions Total sends or page impressions
opens Email opens
clicks Link clicks
open_rate Open rate as a decimal (e.g., 0.42 for 42%)
click_rate Click-through rate as a decimal
conversions Goal conversions (if tracked)

Troubleshooting

Platform cannot reach the webhook URL Confirm your platform can make outbound HTTPS requests. If you are using the proxy URL, verify the proxy service is running.

Data not appearing in ACS Ensure the content_title or content_url in the payload matches an existing content piece in your ACS library. Unmatched payloads are accepted but may not surface in dashboards.

Duplicate entries If your platform sends the same event multiple times, contact support — ACS deduplicates by upload ID but edge cases can occur depending on platform behavior.

← Back to Learn