KeyCDN is an easy-to-use content delivery network which provides a solid set of features for a very low price.
KeyCDN has relatively few servers, but they're focused in the key areas: 10 in North America, 10 in Europe, three in Asia, one in Oceania and one in South America.
The service supports both origin pull (KeyCDN grabs content from your origin server when required) and origin push (you upload content to KeyCDN). Origin push features include the ability to upload content via your FTP account, and synchronize it with rysnc.
KeyCDN can handle regular static HTTP and HTTP/2 content, HLS and HTTP streaming. GZip and HPACK compression is available to optimize performance.
Security features include support for free shared SSL and custom Let's Encrypt SSL certificates. There's some mitigation from DDoS attacks. KeyCDN can use HTTP referrers to block hotlinking, and you're able to block ‘bad bots’ with a click.
The service offers plenty of tweaks and settings to help customize operations, including the ability to create custom caching rules and a RESTful API to automate everything. The ability to view raw logs in your web console might help you identify any problems, or you can stream live logs via syslog to your destination of choice (at extra cost).
CDN pricing schemes can be a nightmare to understand, but the KeyCDN model is refreshingly straightforward. There are no variations in transfer charges across the network, no extras like ‘requests’ to figure out: you just pay a simple flat rate for the bandwidth you use.
Prices are extremely low, too, starting at a monthly $0.04 per gigabyte. That's around half to a third of what you'd pay with services like Cloudfront and Fastly. And it can fall further, dropping to $0.01 for huge sites with PB-level traffic.
Each account supports up to five ‘zones’, or websites. That's better than some – MaxCDN gives you two zones by default – and you can add more for $1 per month per zone.
Push zones can be useful for storing larger files, reducing the load on your origin server. These are charged at an extra $0.47 per gigabyte per month up to 250GB, dropping to $0.37 per gigabyte for the next 250GB, and $0.27 per gigabyte after that. (Beware, push zones are limited to a maximum of 250,000 files and have a 5GB maximum file size.)
A free trial gives you 25GB of traffic and 30 days to try the service for yourself.
There is one catch. To continue using the service after the trial you must pay KeyCDN upfront, with a minimum charge of $49 (£39). Your credit balance then falls depending on the level of traffic, expiring after a year unless you make another payment.
This scheme could be an issue if you're hoping to use KeyCDN with very low traffic sites, but otherwise it seems reasonable enough. Around $4 (£3.20) a month isn't a lot to have access to this type of service, and if you're using more than 100GB traffic a month, you'll be paying more than the $49 (£39) minimum anyway.
The KeyCDN signup process is one of the fastest and simplest we've seen. Enter your domain, email address, a username and password, and one more click takes you straight to the KeyCDN web dashboard. The free starter 25GB means you're not asked for payment details immediately, and although you're sent an email and asked to click a ‘confirm’ link, you don't have to wait to do that before you can access the site.
The Dashboard opens with an account overview where you can view your used storage, traffic, credit balance and more. Links to useful knowledgebase articles are displayed to help you get started ("Compete CDN migration guide", "CMDS integration guides", "How to create a pull zone", "How to create a push zone" etc.)
If you've ever used another CDN, you'll figure out the basics immediately. Click Zones > Add Zone, enter a zone name and the address of your origin server, and that's enough to get you started.
Checking a Show Advanced Features box gives you instant access to KeyCDN's many zone settings and options. This makes for a long list, but at least they're all available in one place.
Some of these settings are familiar. You can set the maximum time an object will be cached before checking for an update (24 hours by default), toggle GZip compression, toggle HTTP/2 support, or enable/disable SSL settings.
SSL options include free shared, free Let's Encrypt and custom SSL. You can also redirect HTTP requests to HTTPS in a couple of clicks.
A simple Force Download option can force files to download instead of opening. You can often do the same in other CDNs by tweaking the Content-Disposition header, but it's much easier here – just a one-click switch.
An optional Origin Shield enables defining a KeyCDN server as a shield. If other edge servers haven't cached content, they'll fetch it from the shield rather than the origin. This reduces traffic to your server, but will also fractionally cut CDN performance as edge servers have an extra step to read new content.
Other features include header manipulations (add a canonical header to improve SEO), options to cache or strip cookies, or set up a custom robots.txt.
Once your zone is created, KeyCDN assigns you a URL along the lines of mydomain-8c93.kxcdn.com. As usual, you can set up a custom CNAME record to make this more readable (cdn.mydomain.com). Change your site code to use this for objects you'd like to cache – "www.mydomain.com/image.jpg" becomes "cdn.mydomain.com/image.jpg" – and KeyCDN kicks in. On the first access, it reads the original file and shares it around the network. On subsequent accesses, the visitor is served the image from the nearest edge location.
If you're using WordPress or some other CMS, KeyCDN provides various tools and guides to help you get set up. CDN Enabler is a lightweight plugin which makes it easy to integrate KeyCDN with your WordPress site.
A capable set of reporting tools includes real-time stats of your traffic, requests per second and the cache hits ratio. Graphs show your traffic and storage use over time and geographically. There's data on your most-requested files, and a Real-time Logs panel keeps you up-to-date with the very latest CDN events.
Other features include the ability to purge your cache entirely, by URL or tag (a means to group objects). Tagging can be a more convenient way to selectively clear your cache ("all the images associated with a specific event"), but the tags must be set up on your origin by adding a Cache-Tag response header field to each asset.
If you have any questions about this, there's a web knowledgebase to explore. This explains the big picture reasonably well, but we found low-level issues weren't always covered as clearly.
Email support is included at no extra cost, but there's a potential gotcha: you can't raise direct support requests during your initial trial, or at least until you buy some credits. This isn't a major issue – Amazon Cloudfront doesn't include technical support as standard, at all – but it does seem a little bizarre to refuse direct support to new users, as they’ll probably need it the most.
Which is the fastest CDN? That's hard to say, as there are so many factors involved. The locations and spread of your visitors, the web applications you're using, the size of files you're caching and how often they're refreshed, and any bonus optimizations the CDN offers.
CDNPerf offers a simple starting point to gauge performance by comparing CDN response times as experienced by real users around the world. It's just one metric and doesn't tell the whole story, but it'll still give you some idea of how providers compare.
At the time of writing, KeyCDN is ranked a mid-range 15th out of 24 for worldwide response times. That's better than some well-known names – MaxCDN, CacheFly – but it's lagging well behind Cloudflare, Cloudfront and more.
Checking continent-level speeds doesn't reveal any great surprises. KeyCDN's highlight is its 8th place in Asia, but after that it's 14th in Oceania, 16th in Europe and 20th in North America.
We drilled down to individual countries with similar results. For example, KeyCDN was 18th in both the US and UK.
KeyCDN isn't the best performer, then, but it's important to keep these scores in perspective. The company's average 31ms response time may have earned it 18th place in the UK, but the first-place providers (Fastly, Level3, MaxCDN) were only four milliseconds ahead. KeyCDN is slower, but that doesn't make it slow overall, and if you like other aspects of the service – such as the ultra-low prices – it may still be a sensible choice.
KeyCDN’s response times are a little below average, but it's a likeable service overall with some of the lowest prices around. In light of that, it’s certainly worth considering, especially for novice users or low traffic sites.