What “tracking a deal” actually requires
Mautic has no deal record. That single fact shapes every method below, so it is worth stating plainly before comparing approaches — the longer version is in Does Mautic have a CRM?
Whatever you build, tracking a deal means holding four things somewhere:
- An amount. Without it you cannot answer “how much is in the pipeline?”
- An expected close date. Without it you cannot answer “how much closes this quarter?”
- A stage that belongs to the deal, not to a person — so one contact can appear on two deals in two different stages.
- Several contacts on one deal. Real B2B purchases involve an evaluator, a budget holder, and usually a sceptic.
Every method that follows satisfies some of these and fails others. That is the whole decision.
Method 1 — Contact stages and custom fields
The zero-cost option, using only what ships with Mautic. Roughly:
- Under Contacts → Stages, create one stage per step of your sales process — Qualified, Demo, Proposal, Negotiation, Won, Lost.
- Under Settings → Custom Fields, add contact fields for deal value, expected close date and deal owner.
- Build segments filtered on stage, so each step of the pipeline has a list you can open.
- Drive stage changes from campaign actions where you can, so automation and pipeline stay in step.
What works: it is free, it is native, and your segments and campaigns can react to stage changes immediately. For a solo founder with a handful of one-contact deals, this is genuinely enough.
Where it breaks: the contact is the deal. A contact holds one stage, one value and one close date, so a customer with a renewal and an upsell cannot be represented at all — you have to pick one. Stage history is overwritten rather than recorded, so stage-to-stage conversion cannot be measured after the fact. And because value lives on a contact field, summing pipeline means exporting to a spreadsheet anyway.
The failure is quiet. Nothing errors when a contact gets a second deal. The number in the value field is simply overwritten, and the pipeline total stays plausible while being wrong.
Method 2 — A spreadsheet beside Mautic
One row per deal, columns for contact, amount, stage and close date. It fixes the multi-deal problem instantly, and for the first twenty or thirty deals it is honestly fine.
Where it breaks: nothing typed into the sheet reaches Mautic. Your automation cannot see that a deal moved to Proposal, your segments cannot exclude people with an open deal, and within a month the sheet and Mautic disagree about what happened. It also stops being maintainable the moment more than one person edits it.
Method 3 — An external CRM synced to Mautic
Connect Mautic to a dedicated sales CRM through its REST API, a native integration, or an automation platform. The CRM owns deals; Mautic owns marketing.
What works: you get real deal records with everything a sales organisation needs — quotas, territories, forecast hierarchies, approval workflows, mature reporting.
What it costs: two contact databases and two definitions of “customer.” A field mapping that needs attention whenever either side changes. Per-seat pricing that grows with headcount rather than with revenue. And a sync that is invisible when it works and expensive when it silently stops.
Method 4 — A deal object inside Mautic
Keep one database and add the record Mautic is missing: a deal with its own amount, currency, close date, owner and stage, linked to contacts already in your instance. This is what Deal Flow installs into your own Mautic.
- Deals as first-class records — title, amount, currency, expected close date, owner, and a stage owned by the deal rather than by a person.
- Kanban pipelines — drag deals between stages; define as many pipelines as your business runs.
- Buying committee roles — attach several contacts to one deal and label what each does: champion, decision maker, blocker, influencer.
- Notes, tasks and attachments on the deal — the activity trail lives with the opportunity instead of scattered across three contact records.
- Bidirectional stage sync — deal stages can drive Mautic contact stages, so segments and campaigns you already built keep working.
- REST API and webhooks — every deal operation is scriptable, so quoting tools and automation platforms read and write pipeline directly. See the API reference.
It runs on your servers against your database. Installation is a download and unzip into the plugins directory — the walkthrough is in the installation guide.
Side by side
| Requirement | Stages + fields | Spreadsheet | External CRM | Deal object in Mautic |
|---|---|---|---|---|
| Deal amount | One per contact | Yes | Yes | Yes |
| Expected close date | One per contact | Yes | Yes | Yes |
| Several deals per contact | No | Yes | Yes | Yes |
| Several contacts per deal | No | By hand | Yes | Yes, with roles |
| Pipeline value totals | Export needed | Yes | Yes | Yes |
| Visible to Mautic automation | Yes | No | Via sync | Yes |
| Second system to maintain | None | The sheet | CRM + sync | None |
| Cost shape | Free | Free | Per seat, monthly | $149 one-time |
Which one to pick
The honest decision rule, in order:
- Under ten deals, one contact each, one person selling? Contact stages are fine. Do not add software to solve a problem you do not have yet.
- Sales team large enough for quotas, territories and approvals? Run a real CRM and pay the sync cost. Nothing inside Mautic will replace that machinery.
- Somewhere in the middle — a few people, deals with multiple stakeholders, pipeline you need to total? That is exactly the gap a deal object inside Mautic fills, and the case where a second database costs more than it returns.
The spreadsheet is a good starting point and a bad destination. It is worth using early, and worth leaving before it becomes the system of record.
Pricing is one-time. Deal Flow is $149, unlimited users, one year of updates included. No per-seat charge as the team grows.
Frequently asked questions
Can you track deals in Mautic without a plugin?
Yes, up to a point. You can use contact stages as a lightweight pipeline and add custom contact fields for value and close date. It works while every contact has at most one deal. The moment a contact has two open deals, one record has to hold two amounts and the reporting stops being trustworthy.
How do I see total pipeline value in Mautic?
Core Mautic cannot sum it, because there is no field that holds the value of a deal. Contact stages count people, not money. Summing pipeline value requires a deal record with its own amount, which means either an external CRM or a deal object added inside Mautic.
What is the difference between a Mautic stage and a pipeline stage?
A Mautic stage is one label on one contact, and a contact occupies exactly one stage at a time. A pipeline stage belongs to a deal. That is why one contact can sit on several deals at once, and why several contacts can sit on one deal.
Should I sync Mautic to an external CRM instead?
If your sales organisation needs quotas, territories, forecast hierarchies or approval workflows, an external CRM is the right call and the sync cost is worth paying. For a small team moving deals through a few stages, keeping deals in the same database as the contacts avoids the sync entirely.
Track deals where your contacts already live
Deal Flow is $149 one-time — unlimited users, one year of updates included.
Get Deal Flow — $149