Help Center
How can we help? πŸ‘‹

Set default custom code for every new template (Persistent Custom Code)

Save default Head, Mobile CSS, and Inline CSS snippets once and have them auto-apply to every new template you create, synced across your whole team

If your team adds the same custom code to every email β€” a reset snippet in the head, a few mobile media queries, a block of inline CSS β€” you can save those snippets once as defaults and have the plugin apply them automatically to every new template. New teammates and new files inherit the same defaults, so your whole workspace starts from the same baseline.

Where to find it

Open the Properties / Template settings in the plugin, where the custom-code fields live. There are three:

  1. Head of email β€” raw HTML/CSS injected into the email's <head>
  1. Mobile CSS β€” styles applied at mobile breakpoints
  1. Inline CSS β€” styles inlined onto your elements

Each field has a "Save as default for new templates" checkbox next to it.

Saving a default

  1. Enter the snippet you want in any of the three fields (Head, Mobile CSS, or Inline CSS)
  1. Tick "Save as default for new templates" for that field
  1. That snippet is now stored as your default and will be pre-filled into every new template you create

To stop using a default, untick the box β€” the saved default is cleared and new templates will no longer be seeded with it.

Your edits auto-save (with a brief debounce), so there's no separate "save" button. Each field saves independently, which means teammates editing different fields won't overwrite each other.

How defaults apply to new templates

When you create a new email frame, the plugin reads your saved defaults and seeds the new frame's Head, Mobile CSS, and Inline CSS before the frame is selected β€” so the snippets are already in place the moment the template appears. You can still edit or remove them on any individual template; defaults are a starting point, not a lock.

Defaults only seed new templates. Existing templates you created before saving a default aren't changed retroactively.

Team sync

If you're logged in, your default snippets are synced to your team (by team ID) and stored on the Email Love backend, so the defaults follow your whole workspace β€” not just your local Figma install. When a teammate opens the plugin, their defaults are pulled from the backend so everyone builds new templates from the same baseline. The sync runs on login so your latest defaults are always in place.

If you're not logged in, defaults are still saved locally to your Figma client storage, but they won't sync across machines or teammates.

Good things to put in defaults

  • A CSS reset / client-fix snippet you add to every email's head
  • Brand-wide mobile media queries (font scaling, full-width buttons on small screens)
  • Inline styles you always apply for a consistent baseline across clients
  • Tracking or preference-center markup that belongs on every send

Troubleshooting

My default didn't appear on a new template: Defaults seed only newly created frames. Make sure the box was ticked before you created the template, and that you're working in a frame created after saving the default.

A teammate doesn't see the shared default: Team sync requires being logged in. Confirm you and your teammate are signed into the same team, then reopen the plugin so the latest defaults sync from the backend.

I removed a default but old templates still have the code: Clearing a default stops it seeding new templates; it doesn't strip the snippet from templates that already have it. Remove it on those templates directly.

Need help? Reach out at support@emaillove.com or join our Discord community.

Related Articles

  • Export Overview β€” How your custom code is included in the exported HTML
Did this answer your question?
😞
😐
🀩