What is a membership rule?
A membership rule turns a list into a live segment. Instead of adding contacts by hand, you describe who belongs in the list (for example, contacts added in the last 7 days who have never been called) and Voxworks sorts your contacts into it for you. The rule keeps working after you save it: new contacts that arrive from an import, a connected CRM, the API or an automation are checked against it, and the list is re-checked on a schedule so conditions that depend on time (such as not contacted in the last 30 days) stay true. A list with a rule is still an ordinary list. You can add contacts to it by hand, point a batch at it, wash it, and export it. The rule only adds contacts, and optionally takes out the ones it added once they stop matching.Membership rules are set up from the Contacts page (Phone System > Contacts).
Setting up a rule
There are two ways to open the rule editor, both in the Lists side panel on the Contacts page:- A new list: click + at the top of the panel and choose From Rules. The Create List From Rules dialog asks for a Name (the same naming rules as any list apply: unique within your team, at most 255 characters). Click Create List and the rule editor opens for the new list.
- An existing list: hover the list, click the pencil and choose Add a rule. If the list already has a rule, the same menu item reads Membership rule and opens it for editing.
The rule editor
The editor opens as a side sheet headed Who belongs in (list name)?, with the hint “Set the conditions a contact has to meet, then run it to fill the list.”What is this list for?
An optional description of the list’s purpose, up to 500 characters (placeholder: Buyers who have never been called). It is shown to teammates and does not change which contacts match.A contact belongs here when
Choose how the conditions combine:
Click Add condition to add a row. Each condition has three parts:
- A field. Click Choose a field and pick from the searchable list (Search fields…).
- An operator, such as contains or in the last.
- A value, where the operator needs one.
Fields you can use
The field picker groups fields by where the data comes from:Operators
The operators offered depend on the kind of field:
in the last and not in the last take a number and a unit (hours, days or weeks). The window is measured back from the moment the rule runs, so Last contacted not in the last 30 days keeps meaning “not contacted for 30 days” every time the list is re-checked, rather than turning into a fixed date. There is no month unit: use days or weeks. A contact with no date in the field counts as outside any window.
Who matches right now
Before saving, click Check matches in the Who matches right now panel to test the rule against your contacts. The panel shows how many contacts match (for a very large contact book, “of the first N checked”), how many of them have no phone number and will be skipped, and a short sample of matching names and numbers. After you change the rule, click the refresh icon (Check again) to update the count. Checking matches never changes the list.Keeping the list up to date
The settings under the conditions decide when the rule runs on its own and what it does with contacts that no longer match.
Check again and Sort new contacts straight away only apply while Keep this list up to date automatically is on.
How the automatic runs work:
- On a schedule. The list is re-checked at the interval you chose. Pick a schedule when your conditions depend on time, such as in the last windows or Times called.
- When contacts arrive. With Sort new contacts straight away on, the list is also re-checked when your team gains contacts from any source: a CSV import, a CRM sync, the API, an automation or someone adding a contact by hand. To keep large contact books responsive, arrival-triggered runs of the same list are at least 15 minutes apart, so a new contact can take up to 15 minutes to be sorted in.
- Only when contacts arrive turns off the clock schedule, so the list is sorted only when new contacts arrive or when you run it by hand.
- Contacts without a phone number are skipped and counted, because they can’t be called.
- Large lists are processed in slices. A run over a very large contact book can take several passes; it carries on from where it stopped.
The rule card
When you select a list that has a rule, a card above the contacts table summarises it:- The list name, with an info icon whose tooltip explains how the list stays up to date (for example “Sorted as soon as new contacts arrive, and re-checked every day.”).
- The conditions as tokens joined by and or or.
- Edit, to reopen the rule editor.
- Pause / Resume. Pause (“Stop filling this list on its own”) stops the automatic runs without removing the rule; the tooltip then reads “Automatic updates are paused — run it by hand when you need it.” Resume (“Let this list fill itself again”) turns them back on.
- Run now, to run the rule immediately. While it runs the button becomes Stop; a stopped run shows Continue, which carries on from where it stopped.
Run status and history
Below the conditions the card shows the latest run:
Each entry in the run history shows when it started and what started it:
If you edit the rule after its last run, the card shows “The rule changed since it last ran.” with a Run now button. If a run fails, the error is shown on the card. For example, a rule that uses a field that has since been deleted (such as a removed custom variable field) stops with “This rule refers to fields that no longer exist: …”. Edit the rule to replace the missing field.
Rule-driven lists and batches
A rule-driven list works as a batch source like any other list. Add it under List allocation in the batch’s settings (see Source Lists, Allocation & A/B Testing). Contacts the rule adds are picked up by any active batch that uses the list, and are called under that batch’s calling rules and limits. This lets you run an always-on campaign: for example, a list of contacts added in the last 2 days who have never been called, feeding an ongoing batch. A contact the rule takes out of the list is not called for that list after that, but calls already made are unaffected. The batch’s own screening gates (DNCR, opt-outs and so on) still apply to every contact the rule adds.Next Steps
- Lists — list basics, the other ways to fill a list, washing and batches
- Contacts Overview — the Lists side panel and the contacts table
- Custom Variable Types — the fields you can use in conditions
- Source Lists, Allocation & A/B Testing — feed a list into an outbound batch

