Who Unfollowed Me on Bluesky? What You Can (and Can't) Find Out

Bluesky will never tell you who unfollowed you, and neither will any tool — unless something was already watching when it happened. There's no unfollow notification, and unlike a block, an unfollow deletes a record instead of creating one, so there's nothing left behind to look up afterwards. Every unfollower tracker on the market works by taking a snapshot of your followers list and diffing it against a later one. Which means the answer to "who unfollowed me last month?" is: no tool will tell you, and starting one today won't change that.

Annoying, but it's also the most useful thing anyone can tell you here, because it changes what you should do about it. Search this question and you'll get a wall of tool pages that skip straight to "sign up and we'll show you." So: what the protocol actually stores, why the history isn't recoverable, and what you can start capturing today.


Does Bluesky Notify You When Someone Unfollows You?

No — and this isn't a setting you've missed. Bluesky's notification system enumerates the events it will tell you about, and unfollows aren't among them. The app.bsky.notification.listNotifications lexicon defines why a notification exists, with known values of like, repost, follow, mention, reply, quote, starterpack-joined, verified, unverified, plus newer repost, subscription, and contact-match variants. There is a follow. There is no unfollow.

So the only native signal is your follower count moving — which, as detectors go, is close to useless.

Per Bryan Newbold, a protocol engineer at Bluesky, in an AT Protocol discussion, the number on your profile "is computed 'lazily' and includes all follow graph relationships the index knows about, even those which are no longer 'valid'," while the followers list you scroll "does filtering to remove muted, blocked, takendown, and deactivated accounts." In other words your count will happily drop when nobody unfollowed you — a bot follower got taken down, someone deactivated — and it lags reality in general. It's a number about your index, not about your audience. (I went through that whole mess in why your Bluesky follower count is wrong, so I'll leave it there.)

The short version: don't investigate a count change. It's noise.


Why Can't Any Tool Show Who Unfollowed You Last Month?

Because of a small asymmetry in how the AT Protocol stores things, which is worth understanding once.

A follow lives as an app.bsky.graph.follow record in the follower's own repository — the lexicon describes it as a "Record declaring a social 'follow' relationship of another account." Unfollowing deletes that record. Not flags it, not archives it. Deletes it. There's no unfollow record, no tombstone with a name on it, nothing left to query.

Compare that with a block. A block creates a record, and it sticks around. That's exactly why you can look up who blocked you on Bluesky retroactively with a service like Clearsky — the evidence sits in public, permanently. Same network, same openness, opposite outcome:

A block leaves a record behind, so you can look it up any time. An unfollow removes one, so it only exists in the moment it happens.

And it really does exist in that moment, out in the open. Bluesky's firehose — described in the docs as "an authenticated stream of events used to efficiently sync user updates (posts, likes, follows, handle changes, etc)" — carries deletions right alongside creations. The firehose documentation spells out the operation types with a rather on-the-nose example: "These operations are things like 'create post', 'create like', 'delete follow' and so on." (Don't be thrown by "authenticated" — it means the events are cryptographically signed, not that access is gated. Anyone can open a socket to the relay without credentials.)

Unfollows aren't private, then. They're ephemeral. They stream past in public, in real time, and if nothing captured yours, it's gone. We run a firehose consumer in production for Agent Sky, so I've watched this from the listening end: you see the delete land within seconds, and there is no way to ask for yesterday's.

Developers have asked for the obvious API. atproto issue #3064, "Get the recent unfollowers / unfollowings?", has been open since November 21, 2024 — and the author's own description of the state of the art is the whole point of this post: the only workaround is "keeping in a local storage all the current followers/follows and fetching them every time and diff them." That's not a hack around a missing endpoint. It's the only shape the answer can take.


How Do I See Who Unfollowed Me on Bluesky?

Start a snapshot today — that's the only lever available. Every option below is the same mechanism with a different amount of work bolted on (all accurate as I write this in July 2026):

Method Shows past unfollows? Setup What it costs
Watching your follower count No None Free, and wrong in both directions
Third-party tracker (Fedica, Unfollow.blue, browser extensions, phone apps) No — only from the moment you connect Sign-in or an app password Free to paid, depending on the tool
DIY snapshot diff via the public API No — only from your first snapshot A script and somewhere to keep files Free, no login
Asking them n/a Awkward Your dignity

The third-party tools are legitimate and there are a lot of them. Unfollow.blue is a free Bluesky-native one (it leads with mass-unfollowing, with unfollower tracking alongside); Fedica has an unfollowers tab on its paid Grow plan; there's a spread of Chrome extensions and iOS/Android apps doing the same job. Read their copy closely and you'll find the mechanism admitted out loud — the Bluesky Unfollowers Tracker extension, for instance, tells you your "first scan takes 3 to 15 minutes depending on account size," then re-scans every 24 hours. That first scan is the baseline. Nothing before it is recoverable, by them or by anyone.

If you'd rather not hand a stranger an app password, the DIY version takes about ten minutes and needs no login at all, because Bluesky's follow graph is public:

  1. Call https://public.api.bsky.app/xrpc/app.bsky.graph.getFollowers?actor=<your-handle>&limit=100, paging with the returned cursor until it stops coming back.
  2. Save the did of every follower to a dated file. (Save the DID, not the handle — people rename themselves constantly on Bluesky, and handle-matching will log a phantom unfollow every time they do.)
  3. Repeat next week and compare. Anything in the old file and missing from the new one is gone, in some sense of the word.

That vagueness is deliberate, and it's the honest limit of every method here, paid ones included: a diff tells you someone left the list, not why. Unfollowed, blocked you, deactivated, deleted, or taken down by moderation — all five look identical from outside, because the same filtering strips them all out. Anyone handing you a tidy list headed "people who unfollowed you" is quietly rounding five causes down to one.


Is It Worth Tracking Unfollows at All?

Honestly? Mostly not — and I say that as someone who sells follow-graph software.

Two reasons. First, unfollowing is background noise at a low, undramatic rate. In our own data — 58,334 follows across 37 real accounts using Agent Sky, December 2024 to June 2026 — only 4.7% of follows were ever reverted, with a median gap of 7 days between the follow and the unfollow (the full data study is here). That's our users doing the unfollowing rather than receiving it, but it's the same behaviour seen from the other end of the graph, and the shape holds: a thin trickle, spread out over weeks, almost never about you personally.

Second, the question underneath "who unfollowed me?" is usually "is what I'm doing working?" — and net follower growth over a month answers that far better than a list of names. A tracker hands you individual defections to take personally. The trend line tells you whether to keep going.

There is one version of this question that's worth your time, and people constantly conflate it with the other: who doesn't follow me back. That one is answerable right now, no history required, because both sides of the graph are public — compare your following list against your followers list today and you have it. Unfollowers need a before-and-after; non-followers-back only need a right-now. That's the audit with an actual action at the end of it, and I wrote it up in how to unfollow people who don't follow back.


Where Does Agent Sky Fit?

I don't sell you an unfollower feed, and after all of the above you can probably guess why: I couldn't give you the history even if I wanted to, and the live version mostly manufactures anxiety.

What I do with the same plumbing is the useful half. Agent Sky watches the follow graph live rather than trusting a stored snapshot, and that distinction earns its keep at exactly one moment — deciding whether to unfollow someone. A snapshot from last Tuesday will cheerfully report that a follower is gone when the truth is that we missed an event, or that moderation took down an account that has since come back. So before it drops anyone, it re-checks the follow-back against the live API instead of against its own memory. Same idea as the diff caveat above, applied to a decision that actually costs something.

The rest is pace: following accounts that fit your niche at a median of about 3.6 follows a day per active account (Agent Sky product data, Dec 2024–Jun 2026), which is what genuine interest looks like versus a burst. Free to start (no credit card), then $9/month.

Though if all you want is the unfollower question answered, don't pay me for it — I'm not the tool for that. Run the three-step snapshot above, or install a free tracker, and start your history today. It's the one thing that gets less painful the earlier you do it.


Quick FAQ

Can you see who unfollowed you on Bluesky? Only going forward. Bluesky has no unfollow notification — the notification lexicon's list of reasons includes "follow" but nothing for unfollows — and an unfollow deletes the follow record rather than creating one, so there is no leftover data anywhere to look up. A tracker can show you unfollows that happen after you connect it, and nothing before that.

Does Bluesky notify you when someone unfollows you? No. Bluesky notifies you about likes, reposts, follows, mentions, replies, quotes, and starter-pack joins — the known reason values in app.bsky.notification.listNotifications — and there is no unfollow among them. As of July 2026 the only native signal is your follower count quietly changing, which is an unreliable detector in both directions.

How do I see who unfollowed me on Bluesky? Snapshot and diff. Either connect a third-party tracker (Fedica, Unfollow.blue, browser extensions and phone apps all do this) or run it yourself: save your followers list today with the public app.bsky.graph.getFollowers endpoint, save it again next week, and compare the two lists of DIDs. Every method works the same way underneath — there is no lookup, only comparison over time.

Is there a free way to see who unfollowed me on Bluesky? Yes, two. Unfollow.blue is a free Bluesky-native tracker, and browser extensions exist that keep everything local. Or skip the sign-in entirely: Bluesky's follow graph is public, so you can page through app.bsky.graph.getFollowers with no login at all, save the DIDs to a dated file, and diff it against next week's. Paid tools like Fedica's unfollowers tab (on its Grow plan) buy you a nicer dashboard, not extra history.