Moving on from FontAwesome: IcoMoon
3 August 2025 | Blog, Tech notes

I like FontAwesome, but I'm a bit over the fact that they withdraw access to the subsetter app once your subscription expires. I backed it on Kickstarter, but there's only so much many times I want to pay for the same icon collection, you know? And not letting people keep access to the subsetter is miserable, given that subsetting the icons you actually use is mandatory to control file size, as the full icon library is too large to use.
IcoMoon has a free online tool that lets you convert icon collections into a custom font. You upload your icon SVGs, select the ones you want to use, and export them back out as a font, which is trivial to incorporate into your project. This comes in the form of a directory, with several different font types in it (.eot, .ttf, .svg and .woff), and stylesheet. Put these in your project's vendor directory (I am using /vendor/icomoon), and use as follows:
<!-- Include the IcoMoon output in a page -->
<link rel="stylesheet" href="vendor/icomoon/style.css">
<!-- Usage -->
<i class="icon-video"></i>
You can delete the .eot, .ttf and .svg fonts and the references to them in the stylesheet, as they are not needed, as per the example below:
<!-- Original style.css -->
@font-face {
font-family: 'icomoon';
src: url('fonts/icomoon.eot?abc123');
src: url('fonts/icomoon.eot?abc123#iefix') format('embedded-opentype'),
url('fonts/icomoon.ttf?abc123') format('truetype'),
url('fonts/icomoon.woff?abc123') format('woff'),
url('fonts/icomoon.svg?abc123#icomoon') format('svg');
font-weight: normal;
font-style: normal;
font-display: block;
}
<!-- Cut down style.css with .eot, .ttf and .svg fonts removed -->
@font-face {
font-family: 'icomoon';
src: url('fonts/icomoon.woff') format('woff');
font-weight: normal;
font-style: normal;
font-display: block;
}
The files are much smaller. With around 30 icons the cut down IcoMoon .woff font comes in at 10 KB, with zero Javascript, while my FontAwesome subset weights 79 KB.
So, thanks IcoMoon! I will probably remove the FontAwesome script from Tuskfish and re-implement the icons as a font. This will allow other icon sets to be integrated, as you aren't limited to the FontAwesome set.
I should mention that IcoMoon also provides a range of paid offerings as well, which include paid icon packs, CDN hosting, and local storage of icon projects in your account.
Copyright, all rights reserved.