"Search Channel" results are terrible

One of my users reported that even tho they typed out the full name of the streamer in my app, the correct channel was only the 17th in the result list. When I’m using the API, I take the first 50 results, this is important.


My user used a channel called lenamoon as an example so I will use her channel in my example as well.

First, here is how this query result looks on the official site:


It is the first result.

Obviously, the site is not using the API that we have to use as developers, but still, Twitch can search if it wants to.

I did some tests and noticed something. The larger the expected search result is, the less relevant the search is. So if first=1, the only result is Lena’s channel, but if first=50, Lena’s channel is the 17th.

Now, my expectation is, the quality of the search result should not depend on the size of the requested result list’s size. Maybe I’m wrong here, but I don’t think it’s a crazy expectation.

So I did a few tests, with different first=<value>, searching for lenamoon and showing the position of her channel in the search result.

first=1 → 1st
first=2 → 1st
first=3 → 2nd
first=4 → 2nd
first=5 → 2nd
first=10 → 3rd
first=20 → 7th
first=50 → 17th
first=100 → 37th :exclamation:

If I use my name as a search query, I get roughly the same results. This is not unique to her.

In case of the first=50, 10 channels are ahead of her, and these channel don’t even contain the word lenamoon in their name…



But that’s nothing, let’s go back to the documentation: Reference | Twitch Developers

Gets the channels that match the specified query and have streamed content within the past 6 months.

Ok, let’s see if this is true and idd, those 17 people did stream in the past 6 months.


Out of the 17 people:

  • 10 of them NEVER STREAMED
  • 1 in 2017
  • 2 in 2021
  • 1 in 2022
  • 3 streamed in the past 6 months

At least with kraken we got the channel’s followerCount, so you could order your search result by that and get a more “relevant” search result. Since helix we don’t have this luxury, because followerCount is no longer included.

As a closing going back to first=50, non of those 7 people who streamed EVER are partners, or have more than 250 followers. Lena is a partner with ~5k followers.

Thanks for reading for my TED Talk, so can we get this fixed? Just kidding, probably won’t be fixed ever, just like all the buggy API endpoints, but at least I’ve tried.

P.S.: you could argue that fuzzysearch could fix this. And idd, it can fix this, as long as the user types out the whole name of the channel, but if the search_query only has a part of the channel’s name, fuzzysearch will fall apart.

P.S.2: in the screenshot Lenamoonxo is 37th (first=50), and ilanamoon is not even part of any of the search results that I did.

P.S.3: I wanted to include the whole json response for first=50, but in this result her channel is 19th instead of 17th like in my initial test… wow

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.