Analytics

Exports

CSV download of any range

Anything you see in the OpenPost dashboards can be exported as a CSV. Pick a range, pick the grain (post-level, day-level, or channel-level), hit Export. The file downloads immediately for ranges under 90 days; longer ranges are prepared in the background and emailed when ready.

Export from the dashboard

1

Open the analytics view you want

Overview, per-post list, or any filtered slice (by channel, tag, or campaign). The export mirrors what’s visible.

2

Click Export → CSV

Top-right of every analytics view. You’ll get a file like openpost-analytics-2026-04-01-to-2026-04-30.csv.

3

Open in your tool of choice

Columns are UTF-8, comma-separated, with a header row. Times are ISO 8601 in UTC.

Export grains

FieldTypeDescription
postper-postOne row per post. Aggregated totals across all channels.
post-channelper-post × per-channelOne row per (post, channel) pair. Use when you want to compare how a post did on each platform.
dayper-dayOne row per day. Totals across all posts and channels.
day-channelper-day × per-channelOne row per (day, channel). Best for channel-over-time charts.

Programmatic export

Kick off a background export via the API. You’ll get an export_id; poll it for the download URL once it’s ready.

curl
curl -X POST https://api.openpost.so/v1/analytics/exports \
  -H "Authorization: Bearer $OP_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "grain": "post-channel",
    "range": { "from": "2026-01-01", "to": "2026-04-01" }
  }'
json
{
  "id": "exp_7YwxJ9",
  "status": "processing",
  "grain": "post-channel",
  "estimated_rows": 24310,
  "created_at": "2026-04-16T10:22:14Z"
}

Poll it:

curl
curl https://api.openpost.so/v1/analytics/exports/exp_7YwxJ9 \
  -H "Authorization: Bearer $OP_KEY"
json
{
  "id": "exp_7YwxJ9",
  "status": "ready",
  "url": "https://exports.openpost.so/exp_7YwxJ9.csv?...signed",
  "expires_at": "2026-04-16T11:22:14Z",
  "row_count": 24310
}
The url is a signed S3 URL valid for one hour. Download it before the expiry. You can always re-request another link by calling the export endpoint again.

Scheduled exports

Workspaces on Pro and Max can schedule a recurring export (daily / weekly / monthly) that drops a CSV in a given S3 bucket you own or emails it to a distribution list. Set one up in Settings → Integrations → Exports.

Column reference

FieldTypeDescription
post_idstringStable OpenPost ID, e.g. pst_abc.
channelstringx, instagram, linkedin, etc. Empty if the grain is post.
published_atISO 8601UTC timestamp of publish.
impressionsintTimes shown to users.
reachintUnique accounts reached.
engagementintLikes + comments + shares + saves.
engagement_ratefloatengagement / impressions.
link_clicksintWhere the platform exposes them.
link_urlstringFirst URL in the post, if any.

Warehouse sync (beta)

If you’d rather have OpenPost push rows straight to BigQuery, Snowflake, or Postgres on a schedule, reach out to support — we have a closed beta running. The sync uses the same data model as the CSV exports.

Last updated April 2026 Edit this page