Tracking DSP's Twitch Contributions for the past 90 days

No Context DSP Chat

kiwifarms.net
Joined
Mar 11, 2021

Intro

Sometime in January, my tism took over one night and I decided to experiment with tmi.js an API/connector library for writing programs to get events from any twitch channel (without needing to authenticate/be authorized by the channel owner). It's basically a way of scraping a twitch chat for all the events like "So-and-so resubbed at Tier 1 for 10 months in a row!" When I started, I wasn't 100% sure what I was gonna do with that data, but I had some ideas about doing something interactive with the twitter account I'm running, and maybe an "game" of some sort.

Given that DSP is no longer in the partner program and prompted by his "I need to double the tips goal every stream to make up for the loss of revenue" segment he did, I've decided to run a report over all the data I've been collected from Jan 22, 2021 to April 21, 2021 (91 days). If you're in the LSB discord, you've probably seen me posting these for a while now, in response to "stream was slow tonight",

Summary of the findings

1619067795542.png


As you can see, most days when DSP streams, he's been making $120-$180, often making a lot more (the peaks above).


Raw Data

If you want to tinker with the raw data I've collected so far, I present you two files:

summary.txt

This file contains an array of objects (JSON) where each object has the date for which the report was run, as well as an amount property which is a pair of numbers. Due to how tmi.js reports certain events, certain resub events (anongiftpaidupgrade is an event received when someone was gifted an anonymous sub, and they decided to continue it from their own pocket) don't have the tier of that sub associated, so for those resubs, I decided to compute the numbers both as T1 (lower bound) and T3 (upper bound). When these two numbers are the same, it means that day there were no resubs whose monetary value was ambiguous.

Preview:


Code:
  {
    "timestamp": "2021-02-19T05:00:00.000Z",
    "year": 2021,
    "month": 2,
    "day": 19,
    "amount": [
      141.49,
      141.49
    ]
  }

allevents.txt

This file is a json export of the mongoDB database I was using to store all these events. If you want to parse these for yourself, you can take a look at tmi.js docs to see what each event means (most of them are pretty obvious like `cheer`, `subscription`, `subgift`, etc). Note, this file is not an array, it's a single mongo document per line, so if you're planning to load this into a program, you'll have to take that into account (the file itself is not valid JSON, even though each line, on its own, is valid JSON).

Preview:

Code:
{"_id":{"$oid":"6019e3397e948d55ac9195c9"},"type":"cheer","timestamp":{"$date":"2021-01-23T04:27:17.819Z"},"user":{"badge-info":{"subscriber":"1"},"badges":{"subscriber":"0","bits":"1000"},"bits":"50","color":"#00FF7F","display-name":"tendiesandjuice","emotes":null,"flags":null,"id":"33056cf0-a262-4dc3-8a13-5ff23d42cc9b","mod":false,"room-id":"261767","subscriber":true,"tmi-sent-ts":"1611376038554","turbo":false,"user-id":"636925237","user-type":null,"emotes-raw":null,"badge-info-raw":"subscriber/1","badges-raw":"subscriber/0,bits/1000","username":"tendiesandjuice","message-type":"chat"},"message":"cheer50 Wait, what? Who doesnt like gin?","year":2021,"month":1,"day":22}

Future Plans​

I haven't stopped the tracking server, so if by some stroke of pigroach luck, he's reinstated, my haterbot will be there to see all the 50-bit cheers, all the OIC subs, everything.
I'll also be taking a look at Youtube API docs to see if I can put together something similar if he does end up moving to YT.

If neither of these happens, then it was a fun experiment while it lasted.

Edit 1: These numbers are predicated on the assumption that DSP gets 50% cut from sub numbers. If you want to re-run the numbers with the assumption of a 70% cut, you'll have to multiply the numbers appropriately.

Edit 2: These numbers do NOT include tips (since tmi.js doesn't see his paypal/streamlabs/elements). I also have not made an attempt to filter out obvious sub refund names like "dspgroomedpanda". If I had to guess, I'd estimate that ever since Twitch put in the 10 minute sub refund exception, he's gotten from 3-10 troll subs which is $10-$20 that my script would be overcounting.

Edit 3: I'm retarded, and didn't realize KF doesn't allow uploading .json files
 

Attachments

Last edited:
Just to be clear OP, this doesn't include StreamLabs? Either way, this is God's work.

Top tier 'tism though, you've inspired me to try some digit recognition bullshit for the tip total. Then we can have a more true and honest figure :)
Correct, this is only data from stuff that appears in his chat (cheers, subs, resubs, subgifts, sub continuation, etc). It doesn't include tips which is outside of twitch's API.

And boomers think I'm a genius because I know how to put a CPU into a socket.

Bravo, OP. I don't know what your IRL career is, but I hope you're in the right field and earning a boatload of money.
Thank you, and I am :)
 
I’m always amazed at the technical know-how people in the Philsphere have. Shit like PigPigGo blows my mind, not to downplay your own data collecting.
Some parts of the site really shine in showcasing how autism is weaponized, this subforum being one of the best parts of the site at it, simply out of necessity, since the subject here is so self-milking.

You'll know Phil has read this thread, if not looked at the stimulating chart included inside, when the tips goal swells to the denominator of $260 or somewhere in there.
 
  • Thunk-Provoking
Reactions: actually
Oh shit, nice work. I can totally cross-reference this against the WWE Champions API data.

And here's what happens when you do: View attachment 2110285
The fact the lines are physically proximate on the graph is an optical illusion, a happenstance of the particular scaling and start values. But the shape of those trend lines seems to mirror each other in an awful lot of ways, like the dual plateaus at 3-16 to 3-18. Maybe I'm a crazy person picking out random patterns in noise but if I were a gambling addict betting man I'd say these two trends are related.

Roster talent is, as far as I can tell, the most straightforward financial indicator on an account. The money mostly goes into pulls for wrestlers and shards to upgrade them, so the higher the roster talent, the more money it's likely has been directly pumped in.

This is my hypothesis: I think DSP has genuinely been using all direct contributions on whaling. The discipline of getting a paycheck from Twitch at a given time into a given account is what's used to pay everything, which is why Kat is freaking out. The subs and partnership was the "above-board" description of his finances to Kat, and she might be completely ignorant of the magnitude of the day-to-day direct contributions, thinking that Phil only puts on occasional beg-a-thons that rake in a set amount. But otherwise it's been going entirely into whaling.

Nice! Though I'm not sure it's correlated with the data I was pulling: I was only ever tracking twitch money, which he receives once a month, I find it unlikely he was tracking these numbers, and then spending exactly that amount on WWE. It's more likely he would spend the tips money on WWE, since that is more volatile, whereas the twitch money is more stable, and could go to bills, mortgage, groceries, supplies for his horse and cat, etc.
 
Does anyone know what Phil's mortgage payment is? How much is the interest?
 
  • Mad at the Internet
Reactions: AssDust
Nice! Though I'm not sure it's correlated with the data I was pulling: I was only ever tracking twitch money, which he receives once a month, I find it unlikely he was tracking these numbers, and then spending exactly that amount on WWE. It's more likely he would spend the tips money on WWE, since that is more volatile, whereas the twitch money is more stable, and could go to bills, mortgage, groceries, supplies for his horse and cat, etc.
Ahh, I'm an idiot and misread your initial post, I thought these were the direct contributions, not the Twitch ones.
 
Ahh, I'm an idiot and misread your initial post, I thought these were the direct contributions, not the Twitch ones.
I started cooking up a quick script to pull the direct contributions by downloading the youtube video, cropping it to just the tips banner, sampling a frame a minute and feeding that through OCR software. Seems to work pretty well so once I finish it tonight I can send it to you, if you want.

It would be good to get all these tools in one place though. Detractor GitHub when? 😜
 
Back