Adding Custom Fonts to Mailchimps Drag and Drop Email Designer

MailChimp includes a neat drag and drop email designer, but it lacks the ability to customize your templates outside of just the basics. One such problem is the font choice. By default, it only includes a list of nine web safe fonts.

These fonts are your safest bet if you want to support as many email clients as possible, but I like to make my emails unique. In my opinion, a custom font gives the design a little extra pop and professionalism. In this tutorial, I want to outline a simple way of adding these to MailChimp’s included templates and still keep the nice drag/drop workflow.

Creating a new template

To get started create a new template in your MailChimp account. I’m going to choose Basic -> One Column as a starter. Here is a screen shot showing my choice:

mailchimp-1col

After you select this template you should have a design that looks something like this:

Mailchimp Template

It’s not a bad design, but it feels very generic. Let’s work on improving this by adding custom fonts and a few style improvements.

Selecting a font

As I mentioned in the beginning, Mailchimp only allows a few web safe fonts but a lot of email clients do support custom fonts. In order for custom fonts to work, they must be inserted from the CSS. Meaning, you can’t use any JavaScript. No TypeKit, Typography.com, or the likes. However, you can use Google fonts.

Google has about a bazillion fonts to choose from and picking a pairing can ruin your day. I’d wager I’ve lost enough hours to drive from North Carolina to California just trying to find perfect font pairings. What I have found helpful is to find one you like and then just do a web search for “{fontname} pairing”.

For this template, I knew that I wanted “open sans” for the body and with that web search I found “Playfair Display” is one that compliments nicely. So we’ll use those two.

In Google fonts, I added both to a collection and then click the “use” button. From here you should see a style sheet to copy and paste.

<link href="https://fonts.googleapis.com/css?family=Playfair+Display|Open+Sans:400,300,700" rel="stylesheet" type="text/css" />

Implementing the font into the template

Now that we know what font to use and we have the code lets add it to our theme. MailChimp doesn’t allow you to edit HTML, so we are going to fake it by inserting code into their editor. Click the first text you see in the upper left:

Mailchimp Header

Next from the text editor select the code button. Here is a screen shot showing the button.

Mailchimp Code Button

Finally, copy and paste the below code and add it to the editor:

<link href="https://fonts.googleapis.com/css?family=Playfair+Display|Open+Sans:400,300,700" rel="stylesheet" type="text/css" />
<style type="text/css">h1,h2,h3,h4,h5 { 
  font-family: 'Playfair Display', serif !important; 
  font-weight: 300 !important; 
} 
h1 { 
  line-height:44px !important; 
  color: #111 !important;
} 
p, .footerContainer { 
  font-family: 'Open Sans', sans-serif !important; 
  font-weight: 300 !important; 
  color: #111 !important;
}
</style>

The above code is all standard CSS with the exception of having to use !important on everything to over-ride MailChimps default styling.

With that set, you should be able to preview and have a nice template with a custom font. Here is the finished design:

Completed Mailchimp Template

Wrap Up

My goal with this tutorial is to show a simple solution to a problem I encountered when creating my MailChimp template. The reason I choose this route over a custom template is because I wanted to keep the simplicity of their editor and to prevent having to deal with fighting HTML tables every week.

As with anything related to email if you try this be sure and test it in as many email clients as you can. Also, this method is not semantic because it’s including CSS outside the head, and I am confident that some will strip it out.

0 Replies to “Adding Custom Fonts to Mailchimps Drag and Drop Email Designer”

  1. Hello Eric,
    I’m having trouble with this, I’m not great with coding, but can get by when I need to.

    This code manages to change the title font for me, but I am finding it difficult to change the body font. I still get stuck with the default Arial font from Mailchimp.

    1. It’s sounds like it’s wysiwyg is adding Arial to the style tag. You probably want to switch to the code view and if you see font-family: anywhere just manually remove it.

  2. It should be noted that this wouldn’t work across all email clients. Some email clients will strip the import code out.

    1. These are the specific email clients that would only support the use of custom fonts:
      -Outlook2000
      -iOS Mail
      -Apple Mail
      -Android (default client, not Gmail)
      -Thunderbird

      1. I’m not certain that list is accurate. I know gmail in the browser supports them. But as I mentioned in the post always check your email first in the popular apps your subscribers use. Most services give you this breakdown.

  3. Eric how do you deal with hyperlinking, given that for each hyperlink you will have to re-enter all of the above code? Seems a bit too tedious

  4. Hi Eric

    Thanks for the tutorial!

    I’m not and expert coder and tried it step by step but seems it’s going nowhere

    Here is the code

    h1,h2,h3,h4,h5 { 
      font-family: 'Montserrat', sans-serif !important; 
      font-weight: 300 !important; 
    } 
    h1 { 
      line-height:44px !important; 
      color: #111 !important;
    } 
    p, .footerContainer { 
      font-family: 'Raleway', sans-serif; !important; 
      font-weight: 300 !important; 
      color: #111 !important;
    }
    

    Please advise what did i do wrong

  5. Same here !
    Did I code something wrong ?

    
    h1,h2,h3,h4,h5 { 
      font-family: 'Raleway', sans-serif !important; 
      font-weight: 300 !important; 
    } 
    h1 { 
      line-height:44px !important; 
      color: #111 !important;
    } 
    p, .footerContainer { 
      font-family: 'Open Sans', sans-serif; !important; 
      font-weight: 300 !important; 
      color: #111 !important;
    }
    

    Please, I really need youuuuuu !… 🙁

    Thank you in advance !

    1. Did you include the css include for the fonts?

      <link href="http://fonts.googleapis.com/css?family=Raleway|Open+Sans:400,300,700" rel="stylesheet" type="text/css" />
      
      1. Here is my code again – and it is not working

        Please advise 🙂

        h1,h2,h3,h4,h5 {
        font-family: ‘Montserrat’, sans-serif !important;
        font-weight: 300 !important;
        }
        h1 {
        line-height:44px !important;
        color: #111 !important;
        }
        p, .footerContainer {
        font-family: ‘Raleway’, sans-serif; !important;
        font-weight: 300 !important;
        color: #111 !important;
        }

  6. FYI, I got this working, but I had to link via https. So, like this:

    Note the “https” (and not “http”) in the href.

  7. Thanks for this useful tutorial, Eric. I really wish Typekit or a similar service was fully supported on all email clients, but Google Fonts is better than being limited to just the web-safe fonts.

    Someday, email will catch up to the rest of web design!

  8. Hey Eric,

    So, I think I’m following along correctly. I placed the following in the text area at the top of the page:

    h1,h2,h3,h4,h5 {
    font-family: ‘Allure’, serif !important;
    font-weight: 300 !important;
    }
    h1 {
    line-height:44px !important;
    color: #111 !important;
    }
    p, .footerContainer {
    font-family: ‘Open Sans Condensed’, sans-serif; !important;
    font-weight: 300 !important;
    color: #111 !important;
    }

    Now, when I go to the design area, I don’t have any of the new fonts listed in the font drop down. I guess I don’t understand where to go from here…

    Thanks,
    L

  9. Hi everybody,

    To those who still struggle… The code that’s offered bij Eric has a tiny bug:


    p, .footerContainer {
    font-family: ‘Open Sans Condensed’, sans-serif; !important;

    The semicolon following sans-serif shouldn’t be there.
    Hope that helps you.

  10. Not quite getting it to clear.

    Anyone see anything?

    h1,h2,h3,h4,h5 {
    font-family: ‘Oswald’, sans-serif !important;
    font-weight: 300 !important;
    }
    h1 {
    line-height:44px !important;
    color: #111 !important;
    }
    p, .footerContainer {
    font-family: ‘Ubuntu’, sans-serif !important;
    font-weight: 300 !important;
    color: #111 !important;
    }

  11. Having trouble getting the code to accept.

    Anyone see anything?

    h1,h2,h3,h4,h5 {
    font-family: ‘Oswald’, sans-serif !important;
    font-weight: 300 !important;
    }
    h1 {
    line-height:44px !important;
    color: #111 !important;
    }
    p, .footerContainer {
    font-family: ‘Ubuntu’, sans-serif !important;
    font-weight: 300 !important;
    color: #111 !important;
    }

  12. Hey I can only get this to work in MailChimp’s preview, not when I actually send the email, I’m using Gmail but have also testing outlook….what gives?

  13. Thank you Eric! This worked great. The only thing I can’t figure out is how to use this technique to change the font inside Mailchimp’s buttons?

  14. Hi Eirc,

    Cool Post, Facing a problem though
    I am able to get the preview with the Google fonts both in the preview & editor, hoever when I send the test email using mailchimp I see the websafe fonts.

  15. Just a little comment for people who struggle, as I used to : don’t forget to make sure that in your text blocks you add the proper tags (, etc.) ! 😉

    1. I believe you can use markdown style with the three backticks:


      ```
      my code here
      ```

      When I went to edit your comment to fix it no code was there so apparently WordPress totally stripped it out. Sorry.

Leave a Reply