> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bizzyco.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Creating an Email Template

> Write a template with variables and validate it against Bizzy templating rules

1. Go to **Email Templates** in the sidebar.
2. Click **Add Email Template**.
3. Fill in the form.

<Frame>
  <img src="https://mintcdn.com/thebizzycomapny/LTbGbhRRJUQlFsAe/images/user-guide/email-templates/create-form.png?fit=max&auto=format&n=LTbGbhRRJUQlFsAe&q=85&s=7ef60b1fa07c07616deb878012167480" alt="Create email template dialog" width="800" height="500" data-path="images/user-guide/email-templates/create-form.png" />
</Frame>

## Fields

| Field           | Limit                 | Required |
| --------------- | --------------------- | -------- |
| **Name**        | 1 – 200 characters    | Yes      |
| **Subject**     | 1 – 1,000 characters  | Yes      |
| **Body**        | 1 – 50,000 characters | Yes      |
| **Description** | 0 – 2,000 characters  | No       |

## Template variables

Use `{{mustache}}` syntax anywhere in the subject or body:

```
Subject: Welcome to {{business_name}}, {{first_name}}!

Body:
Hi {{first_name}},

Thanks for signing up — we're excited to have you. If you need help, just reply to this email.

Cheers,
{{sender_name}}
```

Bizzy extracts every `{{variable}}` automatically. There's no separate step to
declare them — just use them where you want them filled in.

### What the preview shows

The template detail page has a **Preview** tab that lists every extracted
variable. You can fill sample values and see the rendered subject and body
update live. The body preview shows the final delivered email — your content
wrapped in the same standard layout Bizzy applies at send time.

## Validation

Bizzy validates the subject and body for Mustache syntax errors on save — for
example, an unclosed `{{` or a dangling `}}`. You cannot save a template whose
syntax is invalid.

<Note>
  Variables that aren't provided at send time render as empty strings —
  Mustache silently skips them. If a variable is truly required, enforce that
  in the automation or agent that calls the template, not in the template
  itself.
</Note>

## Active vs. archived

Every template has an **active** or **archived** state. Archived templates don't
appear in the automation/agent picker but remain in the list for reference and
reactivation. This is a soft state — archiving does not delete history.

## Next steps

<CardGroup cols={2}>
  <Card title="Using templates" icon="paper-plane" href="/user-guide/email-templates/using">
    Preview, versions, sends
  </Card>

  <Card title="Automations" icon="bolt" href="/user-guide/automations/index">
    Reference a template from an automation
  </Card>
</CardGroup>
