Exploring Bluesky Numbers

By JYC (@jyc.dev)
Published:

An investigation into user registration numbers on Bluesky and the AT Protocol, including different counting methodologies and interesting findings.

Understanding Your Place in the Bluesky Universe ๐ŸŒŒ

Ever wondered about your place in the Bluesky universe? ๐Ÿค” Like, "When did I actually join?" or "What's my user number?" Well, seat back and read - it's a bit more interesting (and complex) than you might think!

The Official Numbers ๐Ÿ“Š

According to bsky.jazco.dev, Bluesky is now home to millions of users! At the time of writing this article, we're looking at 18,587,493 users. Pretty impressive, right? ๐Ÿš€

The 10M Celebration Moment ๐ŸŽ‰

Remember when Bluesky hit 10 million users? That was huge! They rolled out this cool feature where you could see your exact position in the Bluesky timeline. You could even generate a fancy image showing your number - but only if you were part of the first 10M club!

The neat thing was how personal they made it - you could only peek at your own number, not anyone else's. โœจ

Check out this example: <blockquote class="bluesky-embed" data-bluesky-uri="at://did:plc:d476bs72ukvewdfo76dnudbj/app.bsky.feed.post/3l4djsz4qab2r" data-bluesky-cid="bafyreifng7yoknhubk3j5xauvmsodfa4untkyfdlbkstlgdisjwhidvpwq"><p lang="fr">&quot;Nous sommes dรฉsormais plus de 10 millions sur Bluesky, et jโ€™รฉtais nยฐ99โ€ฏ654ย !&quot;

Within 100K. Not bad... ๐Ÿ˜<br><br><a href="https://bsky.app/profile/did:plc:d476bs72ukvewdfo76dnudbj/post/3l4djsz4qab2r?refsrc=embed">[image or embed]</a></p>&mdash; NotPatrick (<a href="https://bsky.app/profile/did:plc:d476bs72ukvewdfo76dnudbj?refsrc=embed">@notpatrick.com</a>) <a href="https://bsky.app/profile/did:plc:d476bs72ukvewdfo76dnudbj/post/3l4djsz4qab2r?refsrc=embed">September 17, 2024 at 9:50 AM</a></blockquote><script async src="https://embed.bsky.app/static/embed.js" charset="utf-8"></script>

A Deep Dive into the Numbers ๐Ÿ”

My curiosity got me, so I dove into the PLC Directory. This is basically the big book of everyone who's ever been part of the AT Protocol system - we're talking about 25 million entries!

I had a lot of fun diving in the data, first pulled everything locally and stored it a raw json file. Then, I started to push entries to a postgres database (Like this I could play with data without thinking about pulling latency to plc directory). All this thanks to remult (but lets not focus on that right now ๐Ÿ˜‰)!

Here's what I discovered when crunching the numbers:

๐Ÿ‘‹)

For instance, a user might show up as:

Here is the example: <blockquote class="bluesky-embed" data-bluesky-uri="at://did:plc:f5vv2f7a4huhkcqy6b4fp5ge/app.bsky.feed.post/3layq2ekc7c2y" data-bluesky-cid="bafyreihhi4iwfq34fcxfgt5ns2z45ojd5crgkxqcqnpkzhwny3fsbtfnui"><p lang="en">oh wow, yeah the new one is wrong.

bsky.app/profile/notw... Official number 14,725

bsky.app/profile/notw... Yours: 16,360<br><br><a href="https://bsky.app/profile/did:plc:f5vv2f7a4huhkcqy6b4fp5ge/post/3layq2ekc7c2y?refsrc=embed">[image or embed]</a></p>&mdash; Wes (<a href="https://bsky.app/profile/did:plc:f5vv2f7a4huhkcqy6b4fp5ge?refsrc=embed">@notwes.bsky.social</a>) <a href="https://bsky.app/profile/did:plc:f5vv2f7a4huhkcqy6b4fp5ge/post/3layq2ekc7c2y?refsrc=embed">November 15, 2024 at 4:48 PM</a></blockquote><script async src="https://embed.bsky.app/static/embed.js" charset="utf-8"></script>

Different Counting Methods ๐Ÿงฎ

I'm currently tracking two main numbers:

These numbers include everyone who ever registered, even if they later left or got banned. Think of it like yearbook photos - you're part of the history even if you transferred schools! ๐Ÿ“š

Today, in skyzoo.blue, I display your pos_atproto number. In a bit the 2 values will be available (only if you dig into details). I'm not sure if I should change the default number seen to the bsky one? Let me know what you think, tagging me, @jyc.dev.

Side note: For users with a did:web identifier, I also show the closest person who registered around the same time based on their first post. This gives did:web users a rough idea of their "position" in the timeline, even though they don't have a direct PLC number. (The position will end with "web")

The Mystery Delta โ“

Here's where it gets interesting - there's this quirky gap between different counting methods that I'm still trying to figure out.

At 2024-11-17T16:10:00.170373869Z:

So what gives? Are some users missing from jazco's numbers? Should I be filtering more users out? I'm sticking with counting everyone who ever joined - it feels right to include everyone, even those who moved away! ๐Ÿ 

Conclusion ๐ŸŽฏ

The AT Protocol and Bluesky ecosystem is like a goldmine for data nerds like me! ๐Ÿค“ The transparency here is pretty unique - you don't get this kind of peek behind the curtain with other platforms.

Key takeaways:

Want to explore more? Check out the PLC Directory or bsky.jazco.dev - and keep an eye out for these features coming to skyzoo.blue!

Drop me a line if you have thoughts on these numbers - I'd love to geek out about it with you! ๐Ÿ’ฌ


So we are 18M or 19M already?! ๐Ÿค”