All services

Is Bluesky down?

Bluesky is up.

OperationalChecked 3 minutes ago from N. Virginia · responded in 15 ms

Our last check reached bsky.app and got a healthy response.

Last 30 days

The numbers

Availability and response time for Bluesky over the last 24 hours.

Availability

100%

22 checks, none failed

Avg response

191 ms

Mean of every check

Slowest

469 ms

Worst single check

Incidents

0

Runs of failing checks

Downtime

None

Estimated from samples

Downtime is estimated from 10-minute samples, so figures are accurate to within one check interval.

Over time

Every check we ran, and how long each one took.

Availability

03:20Each bar is 10 minutesnow
  • All checks passed
  • Some checks failed
  • All checks failed

Response time

Where the time goes

"Is it down?" is usually really "it feels broken — what's wrong with it?" This is the answer: every millisecond of a request to bsky.app, broken into the four phases it actually spends time in.

DNS

Resolving the hostname to an IP address.

7 ms4%
TCP + TLS

Opening the connection and completing the TLS handshake.

46 ms24%
Time to first byte

Waiting for the server to start responding. Usually the server thinking.

139 ms72%
Download

Transferring the response body.

0 ms0%

Averaged over the last 24 hours. The four phases add up to the total response time of 192 ms.

Incidents

Every time a check against bsky.app failed in the last 30 days, grouped into incidents.

No incidents recorded for Bluesky.

Every check we’ve run against Bluesky has passed.

This page is a Checkly monitor.

Not a mockup of one. Everything above is produced by the monitor below, running every 10 minutes from N. Virginia and Frankfurt. It lives in a repo, gets code-reviewed, and deploys from CI — the same way you would monitor your own service.

That’s the whole product. Monitoring you can read, diff, and version.

availability-bluesky.check.ts
1import {
2 UrlMonitor,
3 UrlAssertionBuilder,
4 Frequency,
5} from 'checkly/constructs'
6 
7new UrlMonitor('availability-bluesky', {
8 name: 'Bluesky (bsky.app)',
9 activated: true,
10 frequency: Frequency.EVERY_10M,
11 locations: ['us-east-1', 'eu-central-1'],
12 degradedResponseTime: 3000,
13 maxResponseTime: 10000,
14 request: {
15 url: 'https://bsky.social/xrpc/com.atproto.server.describeServer',
16 followRedirects: true,
17 skipSSL: false,
18 assertions: [
19 UrlAssertionBuilder.statusCode().lessThan(400),
20 ],
21 },
22})

How we check Bluesky

A real request to the endpoint that matters, every 10 minutes — measured, not crowd-sourced.

What we actually do

  • We send a real HTTP GET to https://bsky.social/xrpc/com.atproto.server.describeServer every 10 minutes.
  • We run it from two datacenters: N. Virginia and Frankfurt.
  • It passes if the endpoint answers with a status below 400 within 10 seconds. Slower than 3 seconds is “degraded”, not down.
  • We probe the AT Protocol server-description endpoint Bluesky clients call, rather than the web app shell. If it fails, the network entry service is down.

What a green check means

  • Bluesky answered a real request from both N. Virginia and Frankfurt — an actual measurement, not complaints counted from a crowd.
  • We probe the endpoint that fails when Bluesky fails, so a green check tracks the part you depend on, not a marketing page that stays up regardless.
  • Checks run around the clock, every 10 minutes, on the same infrastructure Checkly customers monitor production with.

Frequently asked

No. Our most recent check reached https://bsky.social/xrpc/com.atproto.server.describeServer and got a healthy response. We check every 10 minutes from N. Virginia and Frankfurt.

We run a real HTTP request against https://bsky.social/xrpc/com.atproto.server.describeServer every 10 minutes from N. Virginia and Frankfurt, using Checkly's synthetic monitoring. A check passes when the endpoint returns a status below 400 within 10 seconds. We are not counting user reports — we are measuring the actual response.

We probe the AT Protocol server-description endpoint Bluesky clients call, rather than the web app shell. If it fails, the network entry service is down.

We check Bluesky from N. Virginia and Frankfurt. If it answers us but not you, the problem is usually specific to your network, ISP, region, or account rather than Bluesky itself.

Downdetector counts user reports — how many people are complaining. We run an actual synthetic check against the service and report what the wire says. Reports lag the outage and can be noisy; a probe either gets a response or it doesn't.