---
title: "Find the strongest observed weekday for published posts."
method: GET
path: "/insights/posts/best-day"
tags: ["Insights"]
---

# Find the strongest observed weekday for published posts.

`GET /insights/posts/best-day`

## Request

- Base URL: `https://socialbu.com/api/v1`
- URL: `https://socialbu.com/api/v1/insights/posts/best-day`
- Auth: HTTP bearer

Uses posts published on the requested calendar dates in the authenticated user's timezone and each post's latest available metrics. A zero engagement rate is measured only with a positive denominator. The weekday with the highest average per-post engagement rate returns `ready` with at least three measured posts on that day, three across other days, a 10% relative lift, and a 0.5 percentage-point absolute lift over the pooled other-day average, with no tie for first place. If either post-count minimum is not met, measured posts on at least two different weekdays can return `early_result` with the same lift and no-tie checks. Only weekdays with measured posts are compared. Early results describe the selected period and do not guarantee future performance. Empty `accounts` uses all owned and Analytics-permitted shared accounts in the selected team or workspace, including disconnected accounts with historical data; one account returns account scope, and multiple accounts are pooled per post. Requests are limited to 200 days and 25,000 matching posts.

## Query parameters

- `start` string, date, required
- `end` string, date, required
- `team` integer
- `accounts` integer[]

## Response `200`

Recommendation or explicit reason it cannot be made.

- object
  - `data` object
    - `start` string, date, required
    - `end` string, date, required
    - `timezone` string, required
    - `evaluated_at` string, date-time, required
    - `scope` 'none' | 'account' | 'combined', required
    - `account_ids` integer[], required
    - `metric` 'engagement_rate', required
    - `total_posts` integer, required
    - `measured_posts` integer, required
    - `status` 'ready' | 'early_result' | 'no_accounts' | 'no_posts' | 'no_measured_posts' | 'insufficient_data' | 'no_clear_winner', required
    - `best_day` BestPostingWeekday, required
      - `weekday` integer, required: Monday is 1 and Sunday is 7 in the user's timezone.
      - `name` string, required
      - `total_posts` integer, required
      - `measured_posts` integer, required
      - `average_rate` number, nullable, required: Mean per-post engagement rate in percent; null when no post has a calculable rate.
    - `comparison_average_rate` number, nullable
    - `lift_percentage_points` number, nullable
    - `lift_percent` number, nullable
    - `weekdays` BestPostingWeekday[], required
      - `weekday` integer, required: Monday is 1 and Sunday is 7 in the user's timezone.
      - `name` string, required
      - `total_posts` integer, required
      - `measured_posts` integer, required
      - `average_rate` number, nullable, required: Mean per-post engagement rate in percent; null when no post has a calculable rate.

## Other responses

- `403`: The authenticated user lacks Analytics permission for the team.
- `404`: The selected team is not in the user's approved memberships.
- `422`: Invalid dates, unavailable selected accounts, or report size limit exceeded.
- `429`: Rate limit exceeded.
- `503`: Insights metrics are temporarily unavailable.

---

[API](https://skmtc.dev/socialbu/apis/socialbu-api.md) · [All operations](https://skmtc.dev/socialbu/apis/socialbu-api/llms.txt) · [OpenAPI document](https://skmtc.dev/socialbu/apis/socialbu-api/revisions/841b3ab0f671?raw)
