Music Channel Part 2 - Stats

This is the second in a series of posts about analyzing YouTube music channels.

Your Questions, Answered

We left off last time with a freshly created database full of information we could query. We sought to answer a few questions:

  1. How many videos should we seed our channel with?
  2. How often should we upload?
  3. Should we upload more than video at once?
  4. How long can we wait between uploads if something goes wrong?

Channel Seeding?

We’ll take the first upload date of each of our channels and see what their total upload count is:

SELECT Channel, Count FROM ChannelPublish WHERE DaysSinceLastPublish=0 ORDER BY Count DESC

Which returns the following data:

ChannelCount
Majestic Casual6
ChillNation1
Eton Messy1
MikuMusicNetwork1
Monstercat: Uncaged1
MrSuicideSheep1
TheSoundYouNeed1

With the exception of Majestic Casual, no one seems to seed their channel. That makes things easy on us.

Question: How many videos should we seed our channel with?
Answer: None

Upload Pace?

SELECT 
	cp.Channel,
	ROUND(avg(cp.DaysSinceLastPublish),2) AS AvgDaysBetweenPosts
	FROM ChannelPublish AS cp
	WHERE DaysSinceLastPublish > 0 
	GROUP BY cp.Channel
ChannelAverage Days Between Upload
ChillNation1.72
Eton Messy3.50
Majestic Casual1.52
MikuMusicNetwork2.81
Monstercat: Uncaged2.04
MrSuicideSheep1.34
TheSoundYouNeed6.65

This might not tell the whole story though, so lets see if we can get some sense of upload pace vs channel popularity.

We’ll look at a channels lifetime views, along with the average number of views per song per channel. If we take all this information together, we’ll get a stronger sense of where upload pace fits into the scene.

SELECT 
	cp.Channel,
	ROUND(avg(cp.DaysSinceLastPublish),2) AS AvgDaysBetweenPosts,
	(
		SELECT SUM(vs.Views) FROM VideoStats AS vs WHERE vs.Channel = cp.Channel 
	) AS TotalChannelViews,
	(
		SELECT CAST(AVG(vs.Views) AS INTEGER) FROM VideoStats AS vs WHERE vs.Channel = cp.Channel 
	) AS AvgViewsPerUpload
	
	FROM ChannelPublish AS cp
	WHERE DaysSinceLastPublish > 0 
	GROUP BY cp.Channel
	ORDER BY AvgViewsPerUpload DESC
ChannelAverage Days Between UploadTotal Channel ViewsAverage Views per Upload
TheSoundYouNeed6.651,965,150,7386,102,952
MrSuicideSheep1.343,912,749,5211,956,374
ChillNation1.721,731,630,5051,777,854
Monstercat: Uncaged2.042,164,378,0381,592,625
Majestic Casual1.521,704,478,658893,801
Eton Messy3.5113,665,075143,155
MikuMusicNetwork2.8112,827,20412,453

These stats are a bit wonky because each channel tends to have 3 or 4 super-outliers. For example, TheSoundYouNeed’s Tom Odell - Another Love (Zwette Edit) has 395 million views, which is a full 20% of that channels views. There’s more statistical magic we could do involving outlier removal and standard deviations, but we’re just going to leave it is and say that we should try to target one upload every one or two days.

Question How often should we upload?
Answer: Every day, or every other day.

Batch Uploads?

SELECT Channel, Count AS BatchSize, COUNT(Count) AS TimesUploaded FROM ChannelPublish GROUP BY Channel, Count ORDER BY Channel, TimesUploaded DESC
ChannelBatch SizeTimes Uploaded
ChillNation1914
ChillNation230
Eton Messy1722
Eton Messy230
Eton Messy34
Majestic Casual11318
Majestic Casual2159
Majestic Casual338
Majestic Casual418
Majestic Casual57
Majestic Casual63
Majestic Casual72
Majestic Casual92
MikuMusicNetwork1474
MikuMusicNetwork2269
MikuMusicNetwork36
Monstercat: Uncaged11247
Monstercat: Uncaged256
MrSuicideSheep11938
MrSuicideSheep231
TheSoundYouNeed1302
TheSoundYouNeed27
TheSoundYouNeed32

As we can see, on days that a channel uploads, they only upload one song. There’s a small amount of variation within most channels, and the MikuMusicNetwork is an outlier that uploads twice a day roughly a quarter of the time, but it seems with only some exceptions that once-per-upload-day is the norm.

Question: Should we upload more than video at once?
Answer: No.

Upload Gaps?


SELECT 
	cp.Channel,
	Max(cp.DaysSinceLastPublish) AS MaxDaysBetweenPosts,
	ROUND(avg(cp.DaysSinceLastPublish),2) AS AvgDaysBetweenPosts,
	(
		SELECT SUM(vs.Views) FROM VideoStats AS vs WHERE vs.Channel = cp.Channel 
	) AS TotalChannelViews,
	(
		SELECT CAST(AVG(vs.Views) AS INTEGER) FROM VideoStats AS vs WHERE vs.Channel = cp.Channel 
	) AS AvgViewsPerUpload
	
	FROM ChannelPublish AS cp
	WHERE DaysSinceLastPublish > 0 
	GROUP BY cp.Channel
	ORDER BY AvgViewsPerUpload DESC
ChannelMax Upload GapTotal Channel Views
ChillNation1491731630505
Eton Messy178113665075
Majestic Casual131704478658
MikuMusicNetwork & Records5912827204
Monstercat: Uncaged142164378038
MrSuicideSheep363912749521
TheSoundYouNeed561965150738

We’ll quickly drop into SQLite DB Browser’s ploting mode to graph Upload Gap (x) vs Views (y):

Upload Gap Graph

We see a correlation between fewer days between uploads and higher total view counts, but again this is basically raw data that has quirks like super-videos going uncompensated for.

Of course this basically fits with our impression of YouTube, right? Regular uploads are better than sporadic uploads.

Question: How long can we wait between uploads if something goes wrong?
Answer: Try to keep it below 150 days, but don’t sweat it.

Summary

So in summary we’re not going to seed our channel, and we’ll aim to upload about 3 or 4 times a week to start off with.

Now that we have a sense of what we need to be committing to regarding our upload pattern, we can move on to the more fun aspects of channel curation, such as picking out a name and a logo.

And once that is done, we’ll start picking out our initial upload set.

Posts in this series