There’s a lot of talk about the prediction from YouTube’s Robert Kyncl that video will be 90% of internet traffic. This sounds shocking until you realize it’s not, and doesn’t really mean much in context of the internet.
This number presumably is at least partially based on a prediction by Cisco who makes routers that carry that internet traffic. They even bought Flip (an unfortunate tale) simply to help drive video on the internet and presumably drive up the need for routers, their main business. They might have a bias.
The reality is video already is, and will continue to be the vast majority of Internet traffic. However that doesn’t mean people are spending as much time on it as the numbers will make you believe. Video per minute of online activity is just insanely high bandwidth and expensive. The percentage of bandwidth is meaningless, what matters is where people spend their time.
Video compresses very poorly in comparison to text and audio (interestingly, speech compresses fairly well these days). Video these days either streaming or progressive download is still a very bandwidth intensive activity.
This webpage is likely under 160 KB for you and loads in about 300 ms. You’ll spend statistically a few minutes reading this, perhaps slightly less if you just skim for the numbers. The takeaway is experiencing: this blog post is about 160 KB over a few minutes assuming you visit the site, and don’t use an RSS reader (go ahead RSS users, try it).
Now lets figure out what video is typically. Most web video these days is still H.264, and generally 640×480 (480p) or 1280×720 (720p). Most laptops today are pretty cheap and just can’t handle 1080p, certainly their displays aren’t good enough to show a measurable difference, not to mention the buffering time annoys people, so we’ll ignore it’s existence.
I want to make this a little realistic, so to figure out a bitrate, we’ll use the standard formula for what Adobe calls ‘ideal’ in the H.264 Primer, and what most seem to use these days:
[image width] x [image height] x [framerate] x [motion rank] x 0.07 = [desired bitrate]
For 1280×720 that means:
1280 x 720 x 24 x 2 x 0.07 = 3,096,576 bps = ~3000 kbps
And for 640×480:
640 x 480 x 24 x 2 x 0.07 = 1,032,192 bps = ~1000 kbps
This sounds about right. As of today, Wikipedia lists the bandwidth range for 720p at 2–2.9 Mbit/sec and for 480p at 0.8–1 Mbit/sec. So we know we’re on track.
That’s all the math we really need to do. Google can do the conversions for us:
3000 kbps = 1,318.35938 Megabytes / hour = 22 MB / min
1000 kbps = 439.453125 Megabytes / hour = 7.3 MB / min
Going back to the example of this blog permalink, at 160 KB for a few minutes of reading vs. 7,475 KB for one minute of 480p video. That is why video is 90% of traffic.
Video growth is huge, but it’s not nearly as one sided as the stats will lead you to believe.