All platform rules

    Bluesky rules: rate limits for posting

    Last verified September 23, 2026 · re-checked weekly · 3 rules

    Bluesky publishes exact rate limits. Writes are budgeted in points per account: 5,000 an hour and 35,000 a day, where creating a record costs 3. API requests are capped per IP at 3,000 per 5 minutes. Crossing a limit returns HTTP 429.

    The limit most bots actually hit is neither. Logging in (createSession) is capped at 30 per 5 minutes and 300 per day per account, so a bot that starts a fresh session on every run sees 'rate limit exceeded' while posting almost nothing. Every figure below links to Bluesky's own documentation and is re-checked every week.

    Rate limit exceeded means HTTP 429 - and the IP cap is 3,000 per 5 minutes

    API limits
    Verified against source

    Bluesky's documentation says "Requests that cross a limit usually receive an HTTP 429 ("Too Many Requests") response status code", and that many of its services return rate-limit headers to help clients back off. On a Bluesky-hosted account (PDS), overall API requests across all endpoints are limited by IP to 3000 per 5 minutes. This is a separate budget from the per-account points limit on writes.

    What to do: On a 429, read the rate-limit headers and back off until the reset rather than retrying immediately. If several bots share one server, they share the per-IP budget.

    Rate limits far above posting cadence

    API limits
    Verified against source

    Writes are limited per account via a points system: 5,000 points/hour and 35,000/day, with CREATE=3, UPDATE=2, DELETE=1 - at most 1,666 record creations per hour and 11,666 per day. Unchanged since Aug 2023. The least constrained platform in the stack.

    What to do: No practical posting ceiling at our volumes; standard backoff on 429 responses is sufficient.

    Logging in is rate limited: 30 sessions per 5 minutes, 300 per day

    API limits
    Verified against source

    com.atproto.server.createSession - the login call - is measured per account at 30 per 5 minutes and 300 per day. A bot that creates a fresh session on every run, instead of reusing and refreshing its session tokens, can exhaust this long before it comes near any posting limit, and then sees "rate limit exceeded" while posting almost nothing.

    What to do: Create a session once and refresh it; do not log in on every run. If a low-volume bot is being rate limited, check its login frequency before its posting frequency.

    Common questions

    Why am I getting 'rate limit exceeded' on Bluesky?

    For a low-volume bot, the usual cause is logging in too often. createSession is limited to 30 per 5 minutes and 300 per day per account. Reuse and refresh one session instead of creating a new one each run. High-volume bots can also hit the write-points budget or the 3,000-requests-per-5-minutes IP cap.

    What are Bluesky's posting rate limits?

    5,000 points per hour and 35,000 per day per account, where a create costs 3 points, an update 2 and a delete 1. That works out to at most 1,666 new records an hour.

    Are Bluesky's limits a problem for scheduled posting?

    Not for a realistic schedule. The write budget is far above normal posting volumes. The limits that bite are session creation and, on a shared server, the per-IP request cap.

    Keep reading

    When did these rules change? See the dated policy timeline →

    Post to Bluesky without losing reach

    ContentIQ analyzes viral content across TikTok, Reels, Shorts, and YouTube - then writes scripts in your voice that pass the Behavior Test on every line.

    Start Free Trial