How to Pick a CDN
In talking with some of my CTO friends, one of the things that has come up is what a pain in the butt it is to choose a CDN. There isn't any widely available testing tool and there are so many different things to think about when negotiating a contract with these people. While this list is hardly comprehensive, here are some things I wrote down to think about when we were evaluating CDNs.What you know:We want to spend as little as possible per GB.We know we are going to be using more bandwidth month over month.We don’t want to be locked into a contract that requires a high usage per month though, in the event we don’t hit those numbers.We need to offer a reliable solution to our customersHere are the elements of the contract to consider:Contract Length- Our usage is going to change as our business grows so we need to make sure our contract allows us to take advantage of that.- We also do not want to be locked into a fixed amount of usage in the event we are not able to ramp up quickly enough.Minimums- For certain prices most CDNs have minimum usage requirements.- Some will offer roll over (just like cell phone minutes) where you have a 12 month period to meet your minimums (which works nicely as your usage and bandwidth grows)- Some allow ramp up times before you are required to meet your minimums (so you only pay for what you use for the first 90 days as an example)Cash Flow — what is the payment plan associated—do we pay monthly, quarterly, etc.Per Gig Pricing -- Obvious the lower per GB the better. (check out cdnpricing.com for current pricing guidance)Quality- CDN quality is hard to quantify (there aren’t studies or things you can reference and all of them seem to have tip top keynote metrics).- Once we have implemented a CDN we should run our own set of tests and determine their ability to deliver high quality content.- We can look at examples of their other video customers, etc to get a feel for different levels of quality.- Do they have different “quality” pricing? This is not an issue now, but could be at much higher usage levels.Reliability- Backup vendors: Do we need to offer a fall back CDN to customers? If so, is it worth employing a pay-for-what-you-use relationship with a CDN to fall back on if our primary CDN goes down?Multiple vendor- If we use two vendors then it is harder for us to achieve a bulk discount for higher volume.- Using multiple vendors can allow us to get better results—comparing quality post implementation.- More referrals from vendors for more customer leads.SLAs-Evaluate and negotiate on penalties and ramifications for SLA and service failures.Termination- Make sure we understand the conditions under what we can terminate the contract.Feel free to leave comments if you think of anything I might have missed! :)