Skip to content
When, only if, then

When a Deal Is Won, the Next Step Is Already Done.

An admin writes the rule once, on the web or the phone: when a deal is won, create a kick-off task for its owners and tell the account's team. From then on it runs by itself, whether the deal was dragged on the board, edited on the phone or updated through the API.

In the open-source code, MIT licensed. Self-hosted, there is no cap on rules.

A rule reads as a sentence

Leads, contacts, accounts, deals, tickets and tasks can each have rules. Fields, options and people come from your own organisation, so a rule can only choose what is really there.

  • When The trigger A record is created, a record is updated, a chosen field changes, or a field changes to one value. "Changes to" fires on the move into the value only, so editing a won deal afterwards does not run the rule again.
  • Only if Up to twenty conditions All of them hold, or any one does. Text, numbers, dates, choices, yes or no, and people, including your own custom fields, and "was" to compare against the value from before the save.
  • Then Up to ten actions, in order Each one sees what the one before it did. Assign somebody, then notify the record's assignees, and the notice reaches the person just assigned.
Every trigger, operator and action in the docs
[ APP.BOTTLECRM.IO/SETTINGS/AUTOMATION ]
Then

What a rule can do

Each reaches the record, its parent, or the people around them, and each goes through the same checks a person's edit would.

Set a field

A stage, a status, a probability, one of your custom fields, or clear it. The change goes through the same checks as the edit form, so a rule cannot save what a person could not.

Assign

To one person, or in turn between two to twenty people. A rotation skips anyone no longer active, and the newly assigned get the usual assignment email.

Create a task

With a title that can carry the record's name, due a set number of days from today in your organisation's timezone, for the record's assignees, the parent's, the rule's owner or one person you pick.

Notify people

An in-app notification and an email with a link to the record, sent to its assignees, its creator, the parent's assignees, your admins or people you pick. Only members of your organisation, never an outside address.

Send a webhook

Post the record to one of your own signed webhooks, as a rule.triggered event, through the same signing, retries and delivery log as every other webhook.

Reach the parent

A deal's account, a ticket's account, or the record a task belongs to. Set a field on it, notify its assignees or give them the task. A record with no parent is skipped, not failed.

Because a rule acts without asking

Built so a rule cannot quietly make a mess

A rule that runs on every save can do a lot of damage before anybody looks. So every run is recorded, failures reach a person, and nothing a rule does is half-done.

Try it on a record first

Pick a real record and see what each action would do, who it would reach and who it would skip, before the rule is switched on. Trying writes nothing.

A broken rule never blocks a save

Each rule runs in its own transaction. If one step fails, that rule's changes are undone, the run records the reason, the next rule still runs, and the save that set it off stands.

Nobody hears about a record they cannot open

Notifications and tasks go only to people allowed to see the record. Anyone left out is named in the run, so a private deal stays private.

Rules cannot loop

A rule's own changes can set off other rules, three deep at most, and a rule acts on a record once per chain. Two rules that undo each other stop.

Every run is on the record

Thirty days of runs per rule, each with its steps: done, undone, failed or skipped, and why. When runs fail, the rule's owner is told, at most once a day.

Admins only, and only signed in

Members cannot see the rules or their runs. Access tokens and API keys are refused, because a rule keeps acting after the token that wrote it is gone.

A rule acts as a person

It acts as the admin who switched it on, and the activity feed names the rule beside each change. If that admin loses their rights, their rules switch off and the other admins are told.

Your text is never run as code

The record's name is the one placeholder, filled in as plain text. There is no template language and no regular expression, so nothing a customer types can change what a rule does.

The same on every install

The limits, and what a rule cannot do

This is rules on record changes, not a marketing automation suite. The hourly limit is there so a flood of form submissions cannot run away with your organisation.

Conditions per rule

20

Actions per rule

10

Records one action may change

100

Rules setting off rules

3 deep

Runs per organisation per hour

1,000

Run history

30 days

Nothing on a schedule

A rule runs when a record changes, never on a date. "Three days after a lead goes quiet" and reminders before a due date are not something a rule can express.

No branching

One list of conditions, all or any, with no groups, no if-else and no "stop here". Rules on the same change run in list order.

No email to customers

Notify reaches members of your organisation only. There is no drip sequence, no campaign and no message to an outside address.

Some changes do not count

Spreadsheet imports, bulk ticket edits, industry sample data and deletes set no rule off, and nor does a change to assignees or tags on its own. A 2,000-row import does not create 2,000 tasks.

Questions

Before you switch one on

Still not sure?

The source is public. Read how a run is planned and rolled back before you trust a word on this page.

Who can build rules?

Organisation admins, in Settings under Automation, on the web app or the phone app. Members do not see the rules or their run history, because a run names records and people a member may not be allowed to open.

Does a rule run on web form leads and emailed tickets?

Yes. Any save made through the app counts: the web and phone apps, the API, a card dragged on a board, a public web form and an emailed ticket. Forms and email are where most new leads and tickets come from, so a "created" rule runs on them even though nobody is signed in.

What happens when a rule breaks?

Say the field it sets is switched off, or the person it assigns leaves. The rule stays saved, its runs fail with the reason, the list marks it Needs attention, and its owner gets a notice. Nothing it would have written is half-done, and the save that set it off is not affected. Fix it and save, or switch it off.

Can I see what a rule will do before it runs?

Yes. Try it on a record runs the rule's actions as a dry run against a record you pick and tells you what each would do, writing nothing. It shows the actions, so it does not check the trigger or the conditions.

Is there a limit on how many rules I can have?

Not in the open-source code: self-hosted, every rule you switch on runs, within the per-rule and hourly limits above. On the hosted app at app.bottlecrm.io an organisation can have three rules switched on at a time for now.

Does this replace Zapier or n8n?

For steps inside the CRM, often: assigning, creating the follow-up task and telling the right people need no outside tool. For anything in another system, a rule can send a signed webhook, and Zapier or n8n takes it from there.

Stop doing the follow-up by hand

No add-on, no per-rule fee, no trial clock. Host it yourself, or let RunCode run it.

MIT licensed Web and phone Every run recorded