Why self-hosting your web fonts isn't always a bad idea


Recently, we had a client inquire about using a third-party custom font provider like Adobe TypeKit, instead of hosting fonts directly on their own site.

This raises an interesting question: What are the benefits of self-hosting a font, versus hosting it on an external service? It's easy to buy into the hype and say that using a third-party font hosting service will save you a lot of trouble when it comes to embedding and licensing commercial fonts, but that's not always the best option when you're using an open-source or free-for-commercial-use font.

What are the benefits of self-hosting a font?

We've used custom web fonts embedded via @font-face on a number of projects, both internal- and external-facing. Hosted font solutions are available from a number of spots (Google Fonts API, TypeKit, TypeFront), and they're great for a couple of specific uses:

  1. You need access to commercial fonts that you can't get a license to host on your own server (this is the most common reason for using a third-party font hosting service)
  2. You're trying to offload bandwidth costs for hosting fonts
  3. You're worried about having to deal with font embedding and/or licensing yourself

Those are the limited advantages to using a hosted web font service if you have the option to host the font(s) yourself. None of the issues above are really an issue for most of our clients since: (a) we're doing the embedding for them, and it only needs to be done once in most cases; and (b) the cost and bandwidth requirements of hosting fonts on client servers is negligible.

On the other hand, direct web font embedding via @font-face has a number of advantages over TypeKit or any other hosted service, provided you either use an open-source font or you purchase a license to use a commercial font in your environment:

  1. Fonts should render faster since they're hosted on the same server as the rest of your content. This also plays into the FOUT problem (a.k.a. "flash of unstyled text") that plagues Firefox and @font-face — faster loading means less chance of the FOUT being particularly noticeable.
  2. No dependency on a third-party provider's up-time (if they go down, so do your fonts.)
  3. No JavaScript dependency (all third-party font hosts requires JavaScript to load your fonts.)
  4. No subscription fees to pay (TypeKit costs up to $99 per year depending on your traffic.)
  5. No page view limitations (TypeKit limits you to 1 million page views per month without jumping to their enterprise plan.)
  6. No worries that if something goes wrong with your hosted font account (missed payment, accounting error, etc.), your fonts could go down without warning.

FontSquirrelFor further reading on the subject, be sure to check out Scott Vandehey's excellent (and recent) article that goes into some detail explaining the pros and cons of the different modern font embedding techniques.

At the end of the day, I'd only recommend using a hosted web font service if you find them incredibly useful for your purposes, or they're the only solution to your specific needs. If you need access to fonts for which you can't get a commercial use license, third-party hosting may be your only viable option. However, with a great selection out there like the new WOFF (Web Open Font Format) format, and sites like FontSquirrel that offer @font-face kit generation based on a large variety of open source and free-for-commercial-use fonts, make sure to explore all avenues before settling on a font with limited availability.

If you're able to self-host your web fonts, I think the performance and stability gained by not having to depend on and pay for a third-party font provider is the more appealing route. From my perspective, the benefits of self-hosting far outweigh using an outside service, given the option.

Of course, opinions may differ. If you have a different take on it, I'd love to hear from you.

This post is a slightly revised version of one originally published on the Habañero Consulting Group blog.

Comments on this post are closed.