Figma + ESP6 min read
How to Export Figma Emails to Brevo

How to export Figma emails to Brevo

Design your transactional emails in Figma, import them into Mailkick with one click, and sync directly to Brevo (formerly Sendinblue). No manual HTML coding, no copy-pasting code.

Mailkick syncs to Brevo Transactional templates (SMTP API). Make sure you have a Brevo account with transactional email access.

What you need

Step 1 — Design your email in Figma

Create your email layout in Figma at 600px width using Auto Layout for best results. Use your brand colors, typography, and images as you normally would.

Step 2 — Import into Mailkick

  1. Select your email frame in Figma
  2. Open Plugins → Mailkick Export
  3. Click Copy Email
  4. In the Mailkick editor, press Cmd+V / Ctrl+V
  5. Click Export Images in the plugin and drop the ZIP into Mailkick
Importing a Figma email design into Mailkick
Paste your Figma design and drop the image ZIP

Step 3 — Connect Brevo

  1. In Mailkick, go to Settings → Integrations
  2. Select Brevo
  3. Paste your Brevo Transactional/SMTP API key
  4. Click Save changes

Use the SMTP & API key from Brevo, not the Marketing API key. The integration won't work with the wrong key type.

Optional: Set a default sender

  1. Click Fetch senders in the Brevo integration settings
  2. Pick a verified sender
  3. Click Save changes
Brevo integration settings in Mailkick
Paste your Brevo SMTP & API key in Settings → Integrations

Step 4 — Sync to Brevo

  1. Open your email in the Mailkick editor
  2. Click Export
  3. Click Sync to Brevo

Done. Your email is now live as a Brevo transactional template.

Syncing an email to Brevo from Mailkick
One-click sync pushes your email to Brevo

How the sync works

ActionWhat happens
First syncCreates a new template in Brevo
Subsequent syncsUpdates the existing template
Content unchangedNo API call (content hash check)
Template deleted in BrevoMailkick recreates it automatically

Using Brevo variables

Use Brevo's template variables directly in your email text:

Hello {{ params.first_name }},

Your order #{{ params.order_id }} has been shipped!

These variables resolve when you send via the Brevo Transactional API.

Why use Mailkick instead of Brevo's editor?

Mailkick + FigmaBrevo's editor
Design in FigmaYesNo
Centralized design tokensYesNo
Reusable componentsYesLimited
AI translationYesNo
Automatic syncYesN/A
React Email HTMLYesProprietary
Team collaborationYesBasic

Frequently asked questions

Which Brevo API key should I use?

Use the SMTP & API key from Brevo, not the Marketing API key. Go to your Brevo dashboard → SMTP & API → API Keys. The integration won't work with the wrong key type.

Does Mailkick update existing Brevo templates or create new ones?

First sync creates a new template. Subsequent syncs update the same template. If you delete the template in Brevo, Mailkick recreates it automatically on next sync.

Can I use Brevo variables in my email?

Yes. Use Brevo's double-curly-brace syntax directly in your email text, like {{ params.first_name }} or {{ params.order_id }}. Variables resolve when you send via the Brevo Transactional API.

Does Mailkick sync every time I save?

No. Mailkick uses content hashing — it only syncs when your email content has actually changed. Saving without changes won't trigger an API call to Brevo.

Next steps

Troubleshooting

ErrorCauseSolution
brevo_invalid_route_or_methodWrong API key typeUse the SMTP & API key, not Marketing
brevo_sender_missingNo sender configuredAdd a default sender in integration settings
brevo_sender_invalid_or_inactiveSender not verifiedVerify the sender email in your Brevo account
"Save before syncing"Email not savedSave the email, then sync

Ready to build emails faster?

Free during beta. No credit card required.