Setting up mailings via CRM Bitrix24
Typical situation: manager wants to send email to customer segment from CRM, but built-in "CRM Marketing" tool sends emails to spam, templates look wrong, and statistics show 0% opens. The problem is not mail server — the problem is mailings not configured.
Where mailings live in Bitrix24
CRM Marketing module accessible in CRM → Marketing → Mailings. Under the hood uses \Bitrix\Sender\Entity\Letter entity — each mailing email stored in b_sender_posting table. Recipient segments formed via \Bitrix\Sender\Connector — adapters pulling contacts from different sources: deals by stages, contacts by responsible, companies by category.
Three things without which mailing doesn't work:
-
Verified sending domain — Bitrix24 cloud sends via own SMTP servers, but "From" field must match verified domain. Without this emails go from
[email protected]and filtered by providers. -
SPF/DKIM records — if using own mail domain, DNS needs records
v=spf1 include:spf.bitrix24.com ~alland DKIM key from portal settings. Without them — straight to spam. - Correct segment — empty segment doesn't error, mailing just "completes successfully" with 0 sent.
Setting up segments
Segments built via connectors. Standard CRM connectors:
- crm_contact — all contacts or filter by fields (status, responsible, type)
- crm_company — companies with filtering
- crm_deal — contacts from deals on certain funnel stages
For mailing to lost deals: create segment with crm_deal connector, filter by LOSE stage, period — last 90 days. Bitrix pulls attached contacts with email.
Common mistake: contact has multiple emails in EMAIL multifield. Bitrix sends to first in list. If first is old non-working address, email goes nowhere. Check field value order.
Templates and personalization
Template editor supports placeholders: #CONTACT_NAME#, #COMPANY_TITLE#, #DEAL_TITLE#. Complete list — in sender module docs. For custom fields syntax: #UF_CRM_CONTACT_LOYALTY_LEVEL#.
Template saved in b_sender_letter as HTML. If adaptive template needed — build in external editor (MJML, Stripo) and insert ready HTML. Built-in block constructor works for simple emails, but breaks layout in Outlook.
Limits and schedule
Cloud Bitrix24 restricts sending: 100 emails per day on free plan, up to 50,000 on maximum. Limit counts by calendar day UTC.
To bypass limits connect external SMTP: Unisender, SendPulse, own Postfix. Setup — CRM → Marketing → Settings → SMTP. After connecting external SMTP, Bitrix limits don't apply, but restrictions of your mail provider apply.
| Plan | Emails/day limit | Recommendation |
|---|---|---|
| Free | 100 | Trigger emails only |
| Basic | 1,000 | Small segments |
| Professional | 50,000 | External SMTP anyway better |
What to check after setup
Send test email to your Gmail and Yandex address. Check headers: Authentication-Results field should contain spf=pass and dkim=pass. If you see spf=softfail — return to DNS records. Check unsubscribe link — mandatory by law and auto-generated, but sometimes hidden behind template background.







