Skip to content

February Stats Are Live!

February Stats Are Live!

February channel stats are now live. Check out your latest trends, most active chatters, and more on your streamer pages.

Spring cleaning

I've been doing some spring cleaning on the site. I've removed some old code and features that are no longer needed. I also added a favicon to the site. (i dont know why i didnt do this sooner) for technical nerds, code is no longer in one giant file thats loaded on every page. now there are two files, one for the site and one for the core functions like navigation and footer menus on userpages. before there was only one file this is a big improvement and will make it easier to maintain and update the site in the future.

State of the Platform Survey is still open for your feedback!

Help shape the future of chatstats.live our state of the platform survey is still open for your feedback! https://forms.gle/X11cUJUxDoBxMoJt9. See you next month!

Oops, I Accidentally Broke Chatstats

The Great "Can't Log In" Saga

If you tried to log in to ChatStats.live over the past week or so, only to be met with an error message or, worse, for nothing to happen at all. rest assured, it wasn't just you! While working behind the scenes to move the site to our new database, I unintentionally broke logins for everyone, including myself. Oops. 😅 Let’s take a deep dive into what happened, why it happened, and what I learned along the way. This post gets a little technical, so buckle up.

What Happened?

I'm currently in the process of migrating everything over to a shiny new Supabase database. The goal is to improve reliability, security, and retire a lot of the clunky, makeshift code from the old system. In the course of hooking things up, I pushed a change that, unfortunately, completely broke the Twitch login flow across the entire site. This change was only meant to run in the background and shouldn’t have affected anything user-facing but as you might guess, things didn’t go as planned.

Here’s the Kicker

This problematic change was actually deployed on January 17th. So, the broken code was live for some time before I noticed the issue and rolled back the change. It’s always the little “background” changes that slip by you.

What Did Users Experience?

Here's what the average user might have seen:

  • Trying to log in with Twitch sometimes did nothing, or a vague error appeared.
  • Logins worked for a short period, and would inexplicably stop again.
  • Some users were forcibly logged out and couldn't get back in at all, no matter what they tried.

As you can imagine, this was very confusing and frustrating for both users and myself. There was genuinely no clear error feedback, and it took some digging to track down what was going on.

Is It Fixed Now?

I believe everything is working normally again. If you’re still having trouble logging in, please try a hard refresh of the page (CTRL + F5 on most browsers) to clear any cached files. If issues persist, feel free to get in touch.

The Technical Breakdown What Actually Happened?

So, what went wrong under the hood? While making the database changes, I updated the login flow by adjusting which users could sign up or log in. This was a small change meant to finally allow both Twitch Partners and Affiliates to access ChatStats.live. It felt like the best time to do it, given the new database, and had been on my “to-do” list for a while.

Here’s the code snippet at the core of the mess:

// Check if user is a partner or affiliate (allow both)
const broadcasterType = await this.checkBroadcasterType(user.id);
if (broadcasterType !== 'partner' && broadcasterType !== 'affiliate') {
  this.logout();
  alert("Sorry, ChatStats.live is currently only available for Twitch Partners and Affiliates...");
  return null;
}

At first glance, it looks like a simple check to see if someone is a Partner or Affiliate. But, it turns out, the logic is more subtle than that.

if (broadcasterType !== 'partner' && broadcasterType !== 'affiliate')

This condition will only be true if broadcasterType is neither 'partner' nor 'affiliate' which, in practice, should only catch the empty-string (""), meaning a regular user. However, in how Twitch’s API returns values, it will only ever be "affiliate" or "partner" or "", and my code mistakenly assumed the check covered things the right way. In reality, the code was overcomplicating things and, due to some quirks, ended up blocking even valid users. A user can't be both an affiliate and a partner at the same time, but my logic was overly strict.

Twitch intends for broadcasterType to always be exactly one of three possible strings. My check was trying to validate both at once, instead of simply seeing if it was not empty.

This check could have, and should have, been:

if (broadcasterType === '') {

This version is much clearer and easier to understand. It strictly checks if the user is neither an Affiliate nor a Partner (just a regular broadcaster), and prevents them from logging in. It’s also less likely to break due to changes in API behavior or unnoticed edge cases.

Another issue was using a loose equality operator in the original check, which can lead to unexpected results. The simpler approach is more robust and readable.

When the (incorrect) login request was sent to the database, the system responded with an error. It would claim that the user was not a Partner or Affiliate even for valid users! That’s why nobody (including myself) could log in.

This was my mistake. Migrations and refactors can be tricky, and in this case, I missed an edge case that didn’t show up in local testing especially since I was already logged in, so the error slipped by for a while.

PS: Why the Database Migration?

This migration is a major step toward scaling up as ChatStats.live grows, letting us support more users more reliably and securely. The move also helps us leave behind the limitations of the old database, and, honestly, it’s a great learning experience for me as well.

Thanks, as always, for using ChatStats.live and being patient through growing pains like this. I promise to be more careful in the future!

January stats are live!

January stats are now live for all streamers. Yippee you can check out the latest data as always and see how your favorite communities have been chatting this month.

Chatstats State of the platform 2025

if you havent already, please give us your feedback in our state of the platform survey. https://forms.gle/X11cUJUxDoBxMoJt9. this will help us improve the site and make it better for you.

New features

Last month we announced the database migration. this is still in progress and has affected a few users. most notable is that some users may have a generic "streamer" username instead of their actual username. hopefully this will be fixed by the time next months stats roll around.

Global stats are live

Global stats are now live sitewide and aggregated from all streamers. you can check out the latest data at /nerds. ill try to keep this page updated with the latest stats.

Thats all for now, see you next month!

Happy new year! December stats are live!

Happy new year! Hope you had a great christmas and hopefully have an amazing 2026!

Stripe Subscription Changes

We have made some changes to how subscriptions work. We are now using Stripe for all payments in favour of BMAC. if you have an existing BMAC sub. you will be refunded in the coming weeks

Database Migration

Last post we announced a database migration. this is a little behind schedule but this shouldnt affect most people using the site anyway since its a background change.

Ad free promotion ends

When chatstats was launched, we offered a limited time promotion with no ads on the free tier to celebrate. this promotion has now ended and the ad free experience is only available to users with a Lite Plus or Pro subscription. If you are enjoying an ad free experience and want to keep it, now's a great time to upgrade!

December stats are live

December stats are now live for all streamers. duh. you can check out the latest data as always and see how your favorite communities have been chatting this month.

Thanks for a great 2025, and we hope you have a great 2026!

The Great Supabase Migration of Almost Christmas Eve

Twas the night before christmas...

...and all through the house, not a creature was stirring, not even a mouse. The database was being migrated to a new server, and all the data was being copied over.

in all seriousness, we are moving the core user database to Supabase database. Supabase is great because it is open source and free to use. it also has a great api and is easy to use. While their hasn't been any problems so far, I felt like it was best to move to something more reliable, secure and a lot less janky.

What This Means

  • A lot easier to manage new users.
  • Hopefully no wierd issue and edge cases. (for example some users had two entries in the database for some reason)
  • future proofing the site for future growth.

this process has already started and is expected to be done by the end of january. you shouldnt notice any difference, but if you do, please let us know.

thanks for everything this year, and we hope you have a great christmas and new year!

Ad-Free Promotion Ends Soon + Introducing ChatStats Rewind 🎬

November Stats Are Live!

November statistics are now available for all streamers. Dive in and see what happened in your chat this month!

Ad-Free Promotion Ends January 4th

As you may know, when we launched ChatStats.live, we offered a limited-time promotion with no ads on the free tier to celebrate. Well, that time is coming to an end!

Starting January 4th, 2026, the ad-free experience will only be available to users with a Lite Plus or Pro subscription. If you're enjoying an ad-free browsing experience and want to keep it, now's a great time to upgrade!

Introducing ChatStats Rewind 🎬

We're thrilled to announce ChatStats Rewind – your yearly stats overview! Think of it like Spotify Wrapped or Twitch Recap, but for your chat statistics.

You can find ChatStats Rewind on any streamer's stat page. It's a beautiful overview of the year's highlights, including your biggest chat moments, Check it out and share your results with your community!

December Stats Coming January 4th

December stats will be processed on January 4th, 2026. I'll be taking some time away to recharge, but the stats will be ready for you when I'm back. Thanks for understanding!

Thank you for your continued support of ChatStats.live! We hope you enjoy Rewind and appreciate your understanding as we transition away from the free ad-free tier.

October Stats Are Live! 👻

October ChatStats Are Live! 👻

Happy Halloween! October's chat statistics have finished processing and are now live.

Note on timezones & daylight saving:
During October, clocks went backward in many regions due to daylight saving time changes. Because all stats are processed at midnight, you may notice your stats appear available an hour earlier.[...]

Hide Known Bots

You can now hide known bot accounts from your leaderboards. Look for the new Hide known bots toggle when you are browsing stats. We will keep updating the list of bots based on feedback.

Homepage Redesign

The homepage received a small redesign with a new navigation bar. Let us know what you think of the refreshed look. We will be adding more features to the homepage in the future so treat this as [...]

Spooky Ghost Easter Egg

For Halloween, you might notice a familiar ghost from our 404 page floating around the site! Try to catch it and see what messages it brings. This ghostly visitor is here only for a limited time…[...]

Thanks for the Treats

Thank you for the feedback that helped ship these changes. Enjoy the ghostly vibes and see you next month!

September Stats Are Live! + Another Delay

September ChatStats Are Here! 🌟

September chat statistics are now available for all streamers after another delay.

Stats for nerds updated

the stats for nerds page has been updated slightly. it now shows less redundant information.

Archive pages are back

the archive pages for last month didnt show up properly. they are back for all streamers that are eligible.

another delay?

The delay in stats this month was because of a similar issue to last month. i've hopefully fixed it now. sorry for the inconvenience. hopefully when the next stats are live, they will be on time.

Thank You!

Thank you for your continued support and feedback. See you next month!

August Stats Are Live! + Emote Stats Are Back

August ChatStats Are Here! 🌟

August chat statistics are now available for all streamers after a short delay.

Emote Stats are fully back

After a brief outage last month (and the month before that), emote usage statistics are back for all streamers and have been backdated for the past two months.

New Stats for Nerds

I've added a new page for nerds to see the stats in a more detailed way. you can find it at /nerds. this includes how long it takes to generate the stats and long the site takes to buil[...]

Delay?

The delay in stats this month was caused by a bug in the data processing pipeline. It has been fixed now. sorry for the inconvenience.

Thank You!

Thank you for your continued support and feedback. See you next month!

July Stats Are Here + Email Notification Update

July Stats Are Now Live! 📊

The July chat statistics are now available for all streamers! You can check out the latest data and see how your favorite communities have been chatting this month.

Email Notifications Sent

This month, for the first time, we sent out an email to let users know that the new stats are live. We hope this helps you stay up to date with your chat analytics!

Your Data is Safe

We take your privacy seriously. All email addresses are securely stored and are hashed and salted. Your information is never shared to anyone. not even i know your email address, and is only used[...]

Thank you for being part of ChatStats.live!

June Stats Are Live + Emote Stats Update

June Stats Are Now Available! 🎉

Good news, everyone! June chat statistics are now live across all streamer pages. You can find the latest data for your favorite streamers in their respective pages.

Temporary Emote Stats Outage

We're experiencing a temporary issue with emote statistics due to recent changes Twitch made to their backend systems. im working on a fix and will have it back online for next month.

What This Means

  • Chat message counts are working normally
  • User statistics are fully functional
  • Emote usage data is temporarily unavailable

Expected Resolution

as stated above, im working on a fix and will have it back online for next month. but for now everything else is working as normal.

ChatStats Officially Launches Today!

ChatStats is Now Live!

Today marks the official launch of ChatStats.live! After months of development, testing, and valuable feedback from our beta users, we're thrilled to announce that the full platform is now availa[...]

Thank You to Our Beta Testers

We couldn't have reached this milestone without our amazing beta testers. Your feedback, bug reports, and feature suggestions have been invaluable in shaping ChatStats into what it is today.

Special Launch Promotion

To celebrate our launch, all users who sign up will have no ads for a limited time.

Thank you for being part of our journey. Whether you're just discovering ChatStats or have been with us through the beta, we're excited to help you gain deeper insights into your chat engagement.

Happy streaming!