Internet speeds are getting faster and faster, and as a consequence, the amount of time we’re willing to wait for something online is dropping at a precipitous rate. When was the last time you waited over a minute for a website to load? At this point, I assume it’s having server issues and just leave by 10 seconds in.
CDNs help dramatically with this issue, so it’s no surprise that you might want one. I’ve got a list of recommendations and possibilities here, but first let’s talk about what CDNs are and how they work.
A CDN is a Content Delivery Network. It’s essentially just a bunch of servers scattered around the world, all with the same content mirrored on each of them.
Imagine you’re a small business in Florida. You contract a local web host with a small data center in Miami, and they host your website. This is great for residents of Miami! They get your website virtually instantly, piped right into their houses or phones.
Leave Miami and end up in, say, Georgia, and it’s a bit more of a hop away. Someone in Georgia wanting to access your site has to send the data through a few hops to whatever main Internet trunk passes nearby, and wait for responses along the same chain.
It’s even worse for someone out in Oregon, even further away. At those kinds of distances, if nothing else, the speed of light adds a fractional delay to everything. It’s not noticeable under normal circumstances, but when your data has to process through a few dozen routers and sets of who knows how old cabling, every delay adds up.
All of this is not to mention overseas Internet access. Did you know that there are massive cables strung up under the ocean, piping Internet between America and Europe, Europe and Africa, and so on. These cable scan be tens or hundreds of thousands of miles long. Sharks eat them! It’s a big problem!
If you think that’s tedious, slow, and overkill, remember that the alternative is to use satellites in orbit. Travel time becomes a lot longer when you have to beam your data to space via WiFi.
The solution to this problem is a CDN, a distributed network of computers in data centers around the globe. You throw your data on a CDN, and that data is mirrored on servers across every continent except Antarctica, in strategic locations where it can easily serve a large geographic area at high speeds. Your user in Oregon doesn’t need to access your web host in Florida, they can just pull the data from a server in Portland.
Now, the title of this post is slightly misleading. I talk about hosting your blog on a CDN, but that’s not what CDNs do. CDNs will host certain kinds of files, but they don’t host your entire website. There would be data synchronicity issues if they did. Try updating a file on one server and finding it only updates for a certain subsection of the USA, and you’d know what I mean. Now imagine if a customer makes a purchase and the purchase data is mirrored for every CDN server; now you have to fulfill 500 orders from that one person, eh?
A CDN doesn’t host your entire website. CDNs will generally host two kinds of file: media files and scripts/CSS files. They host media files because media files tend to be large, anywhere from a few hundred times larger than an HTML file all the way to tens or hundreds of thousands of times larger, sometimes even millions. Orders of magnitude, is what I’m saying.
Scripts are hosted for consistency more than for speed. Scripts tend to be small, but they can be subject to errors if a packet is dropped or some data is lost along the way through a connection. Rather than risk failure of your analytics tracking code or the code that makes your lightbox work, a CDN makes sure it’s consistent.
Basically what I’m saying is that a CDN is not a replacement for a web host. You still need to pay for web hosting – or use a free host like SquareSpace, Wix, or even just WordPress.com – but you can offload a lot of the server stress and expense by using a CDN to do the heavy lifting.
Now let’s dive right into the list. I’ve tried to classify these by whether or not they have a totally free plan or merely a free trial with some limitations. Ideally, you’ll be able to find one that suits your needs well enough.
Every list of CDNs in the world is going to include Cloudflare, because they’re one of the biggest names most people will encounter.
The biggest benefit of Cloudflare is that they have a “free forever” plan that includes access to the global CDN server network, along with some other features. One of the major other features is DDoS protection, which can put small e-commerce sites in a more comfortable position when there are upswings in traffic and/or malicious attacks.
Cloudflare offers additional features to people who want to pay for memberships, including image optimization, an expanded list of page rules, load balancing, rate limiting, and a lot more. You can read it all on their pricing page.
Incapusla is a pretty good CDN with a wide array of features that are, unfortunately, mostly only available to the enterprise plan. Their “compare plans” menu is a bit disingenuous, as they mark the “Free” plan as having every feature, but that’s just a free trial for the enterprise plan, which is time limited.
Incapsula used to have a completely free plan, but as near as I can tell it’s no longer available. I don’t know whether existing customers were kicked off it or not. There are two free trials available currently, one for their basic plan and one for the enterprise plan, to cater to different levels of potential customers. Either way, it’s temporary.
Cloudinary is certainly out of the… clordinary? Actually, it’s really not. It’s a fairly standard image-focused CDN that has a “forever free” plan that puts a but old asterisk next to “forever”. You get 25 credits, where each credit is worth 1,000 image transformations, or 1GB of storage or bandwidth, or 500 video processing seconds. All in all, it’s actually somewhat limited, depending on your usage. On the plus side, if you’re very low in usage, you can stretch those 25 credits out for, I suppose, 25 months.
Cloudinary is also a tier-2 CDN. They act as a CDN + image and video processor, but they can then go and host your images and media on another CDN, like Akamai or Cloudfront.
Jetpack is one of the most widely used WordPress plugins in the world, and with good reason. It has a huge array of features and benefits for any WordPress-based site, and one of those is the optional Site Acceleration features.
You didn’t think there would be any internet-related space where Google didn’t have a presence, did you? Of course Google has a CDN, it’s barely any work on top of the massive infrastructure they already have in place globally to handle search traffic, ads, YouTube, other ads, and the million other services they provide.
Google’s Cloud CDN is not actually free. Their “free trial” is basically them just giving you $300 in credit to spend. That credit expires after one year, so it’s use it or lose it. If you end up using it quickly, well, your free trial ends pretty quickly. If you’re low usage, you can probably stretch it out the full year.
Swarmify is an odd version of a CDN. It’s actually more comparable to YouTube, of all things. In fact, they bill themselves as a business competitor to YouTube. You use it to host your videos – which you embed on your site – and can customzie them to match site colors and include a few additional benefits. The main benefit, of course, is that you can host videos without your viewers being subject to all of the assorted YouTube ads and CTAs that pull them away from your site.
The downside to the free plan is that it’s limited to 1,000 views per video and only 60 days. It’s also watermarked, though I don’t know offhand how intrusive the watermark is or is not.
Not to be confused with Cloudflare, Cloudfront is a CDN offshoot of the enterprise-level CDN provided by Amazon, AWS. The entirely free tier includes 50 GB of data out and two million HTTP/S requests per month. It’s also free for a full year before you get dumped into the lowest tier paid plan. Once you’re on the paid plan, you only pay based on your usage, which can be pretty cheap, albeit not actually free.
Probably the biggest benefit of using Cloudfront is that it’s an Amazon service, with all of the associated support, back-end engineering, stability, and consistency that implies.
Azure is Microsoft’s offering in the CDN market space, and it’s most comparable to Google’s Cloud in my opinion. They give you plenty of features, including a ton of active monitoring for your site performance, traffic, and usage.
The Azure free trial is similar to Google’s in that it’s available for 12 months, but is giving you $200 in credit to use at whatever rate you consume them.
The primary benefit of Azure, even at the free level, is that they have a ton of additional features, including a list of 25 or more that are permanently free. Container management, their machine learning API, developer tools suite, Active Directory objects, and a whole lot more are always available.
CoralCDN is an interesting project that works as a sort of mixture between a traditional CDN and something like BitTorrent. That is to say, it’s a peer-to-peer CDN network. It’s free and open source, but kind of tricky to use.
You have to append a bit of URL to the objects you want to have served through the CDN, and even then, it only works as long as people are using it. Such is the nature of peer to peer, eh? There are very few operational nodes in South America and Australia, only a couple in the middle east, and zero in Africa altogether. Thus, it’s a viable CDN for the USA, Canada, and Europe, with some utility in China and Korea, but less so everywhere else.
Google Hosted Libraries is a little different from a traditional CDN in that it’s just a series of static libraries that are commonly used for certain features in various other plugins and scripts. It’s a great tool for developers who want to pare down their code and reference static libraries, but it’s of limited utility if you’re not a developer.
Alright, so, I said this was a complete list, but can any list be truly complete? This is where I hand things over to you, the readers. If you know of a great free CDN, list it in the comments below. And, in the future, if one of these options above has gone silent, let me know as well.