Configuring Email Newsletter Templates in Bitrix24
Email marketing in Bitrix24 lives inside the Marketing module (also known as sender). An email template here is more than just HTML: it is a combination of a block editor, CRM variables, and personalisation rules. If a template is built carelessly, emails render differently in Gmail, Outlook, and Apple Mail — and that is a layout problem, not a service provider issue.
Template architecture in the sender module
Bitrix24 stores email templates in the b_sender_letter table. Each template consists of:
-
HTML email body — stored in the
BODY_TEMPLATE_HTMLfield -
Plain-text version —
BODY_TEMPLATE_TEXT(critical for corporate mail servers with HTML disabled) -
Blocks — the block editor structure in JSON format:
BODY_DESIGNER
The built-in editor generates table-based HTML — yes, still tables in the 2020s, because Outlook prior to 2019 does not understand flexbox or grid. This is not a Bitrix24 bug; it is the reality of email clients.
To upload a custom HTML template, use the Code tab in the email editor. An important caveat: Bitrix24 wraps your HTML in its own wrapper with a DOCTYPE and a <head>. If you paste a full HTML document, double nesting occurs and the email breaks. The correct approach is to paste only the contents of <body>.
Personalisation using variables
Variables in Bitrix24 templates use the syntax #{VARIABLE_NAME}. The standard set for CRM mailings:
-
#{NAME}— contact's first name from CRM -
#{COMPANY}— company name -
#{ASSIGNED_BY_NAME}— responsible manager -
#{UNSUBSCRIBE_LINK}— unsubscribe link (legally required)
Extended variables with data from deals and leads are connected via segments and trigger chains. If a variable is not filled in CRM, the email will contain an empty string. To substitute a default value, use the syntax #{NAME|"Dear Customer"} — this works starting from certain versions of the sender module; in older versions, the fallback must be implemented in the template code via a conditional block.
Email client compatibility
The most common problem: the email looks correct in Gmail but breaks in Outlook. Reasons:
Outlook uses Word as its rendering engine — it does not understand max-width, ignores padding on certain elements, and clips background images in CSS. Outlook requires special conditional comments: <!--[if mso]>...<![endif]-->.
Fonts. Google Fonts via @import work in Gmail but not in Outlook. Always declare web-safe fallbacks: font-family: 'Roboto', Arial, sans-serif.
Retina images. For HiDPI displays, images must be twice the displayed size, with explicit width and height attributes on the <img> tag. Without this, images appear blurry on iPhone.
For compatibility testing before launching a campaign, use Litmus or Email on Acid — they render previews across 70+ clients without actually sending.
Template development workflow
- Audit existing templates and identify compatibility issues
- Design the structure: blocks, branding, responsiveness
- Build table-based HTML accounting for Outlook quirks
- Configure personalisation variables and verify substitution
- Test in email clients via Litmus/Litmus Preview
- Upload to Bitrix24 and configure the plain-text version
- Send a test mailing to control addresses for all target clients
| Scope | Timeline |
|---|---|
| Refining an existing template | 4–8 hours |
| New template from scratch (1 design) | 1–3 days |
| Template system (5+ emails in a sequence) | 1–2 weeks |
Pricing is calculated individually after analysing the brand book, existing templates, and personalisation requirements.







