> ## Documentation Index
> Fetch the complete documentation index at: https://docs.autocampaign.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Segments (static & dynamic)

> Group contacts by hand, or with rules so the group updates itself.

## Overview

A [segment](/getting-started/glossary#segment) is a group of contacts you can target
in campaigns. Autocampaign AI has two kinds:

<Tip>
  **In short:** 1) Click New Segment and pick Static or Dynamic. 2) Add contacts by
  hand, or build rules. 3) Check the live preview, then save.
</Tip>

* **Static** — you add and remove contacts yourself. The group only changes
  when you change it.
* **Dynamic** — you set **rules**, and Autocampaign AI keeps the group up to date
  automatically as contacts change.

Find them under **Segments** in the sidebar (`/segments`).

<Info>
  **Time to complete:** \~5–15 minutes  ·  **Difficulty:** Beginner (static) / Intermediate (dynamic)
</Info>

## Create a segment

<Steps>
  <Step title="Click New Segment">
    On the Segments page, click **New Segment**.
  </Step>

  <Step title="Choose a type">
    Toggle **Static** or **Dynamic**. This can't be changed later.

    * **Static** — "Manually add or remove contacts from this segment."
    * **Dynamic** — "Contacts are automatically added based on rules."
  </Step>

  <Step title="Name it (and add rules if dynamic)">
    Give it a name and optional description. For a dynamic segment, build the rules
    (see below) and watch the live match count update.
  </Step>
</Steps>

## Fill a static segment

A new static segment starts empty. To fill it:

1. Open the segment's detail page and go to the **Contacts** tab.
2. Click **Add Contacts**, search and select several contacts, then confirm.
3. Or click **Import Contacts** to import a spreadsheet (CSV) directly into this segment.

Remove contacts anytime from the same tab. Static segments are ideal for
hand-picked lists and spreadsheet imports.

## Build rules for a dynamic segment

Dynamic segments are defined by rules. The rule builder has two levels of grouping:

* A top-level **Match ALL / ANY** toggle across groups.
* Each **group** has its own **AND / OR** toggle across its conditions.

You can have up to **10 groups** and **50 conditions** in total.

### Fields you can build rules on

<Tabs>
  <Tab title="Contact info">
    | Field                                           | Conditions                                                                 |
    | ----------------------------------------------- | -------------------------------------------------------------------------- |
    | **Status** (Active / Invalid / Archived)        | Is, Is not                                                                 |
    | **Stage** (New Lead … Customer, Lost, Archived) | Is, Is not, Is any of, Is none of                                          |
    | **First Name / Last Name / Email / Phone**      | Equals, Does not equal, Contains, Does not contain, Is empty, Is not empty |
  </Tab>

  <Tab title="Activity">
    | Field                                                           | Conditions  |
    | --------------------------------------------------------------- | ----------- |
    | **Source** (CSV Import, Manual, Web Form, Google Ads, Meta Ads) | Is, Is not  |
    | **Opted Out**                                                   | Is (yes/no) |
  </Tab>

  <Tab title="Dates">
    | Field              | Conditions                                        |
    | ------------------ | ------------------------------------------------- |
    | **Created At**     | Is after, Is before, Within last, Not within last |
    | **Last Contacted** | Is after, Is before, Within last, Not within last |

    Relative dates use a number plus **Days / Weeks / Months** (for example,
    "Created within last 30 days").
  </Tab>

  <Tab title="Tags">
    | Field    | Conditions                 |
    | -------- | -------------------------- |
    | **Tags** | Has tag, Does not have tag |
  </Tab>
</Tabs>

<Note>
  Rules today are based on contact details, activity, dates, and tags. There
  isn't a "replied to campaign X" or "campaign status" rule. To follow up
  with people who responded to a campaign, use the [poll → segment](#create-a-segment-from-a-poll)
  flow or tags.
</Note>

### Check who matches before you save

As you edit rules (once each group has a complete condition), a **preview** panel
shows how many contacts match and a sample of who qualifies. That way you can
confirm the audience before saving.

### How dynamic segments stay current

Dynamic segments update **as things happen**, not on a timer. The group is
recalculated automatically when:

* You create or edit the segment's rules.
* A contact is created, updated, or has tags changed.

A status badge on the segment shows **Idle**, **Queued**, **Computing**, or
**Failed** while Autocampaign AI works.

## Create a segment from a poll

You can turn poll responders into a static segment for follow-up. On a poll's
**Votes** tab, click **Create Segment from "\<option>"** next to an option to
build a static segment of everyone who chose that answer. See [Polls](/campaigns/polls).

## Other things you can do with a segment

* **Use in Campaign** — jump straight to a new campaign targeting the segment.
* **Edit** — change the name, description, or (for dynamic) the rules.
* **Clone** — duplicate a segment (the members for static, the rules for dynamic).
* **Delete** — hides the segment; it isn't permanently erased.

## FAQ

<AccordionGroup>
  <Accordion title="Can I change a static segment to dynamic later?">
    No. The type is fixed when you create it. Create a new segment of the other type if
    you need to switch.
  </Accordion>

  <Accordion title="Do I have to refresh a dynamic segment?">
    No. It updates automatically when rules or contacts change. The status badge
    tells you when it's working.
  </Accordion>

  <Accordion title="Can I exclude a segment from a campaign?">
    Leaving out a whole segment isn't available. Instead, add "does not have tag" or
    "is not" conditions inside a dynamic segment's rules to leave those contacts out.
  </Accordion>

  <Accordion title="How many contacts can a segment hold?">
    Segments grow with your contact list. Adding or removing by hand handles up to
    1,000 contacts per action; use a spreadsheet import for larger static lists.
  </Accordion>
</AccordionGroup>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Why do I see 'Cannot manually add contacts to a dynamic segment'?">
    Dynamic segments fill from rules, so you can't add contacts by hand. Edit the
    rules instead, or create a static segment for a hand-picked list.
  </Accordion>

  <Accordion title="Why does my dynamic segment count look out of date?">
    Check the status badge. If it shows **Computing** or **Queued**, it's still
    updating. If it shows **Failed**, re-open and re-save the rules.
  </Accordion>

  <Accordion title="Why can't I import into my segment?">
    Only **static** segments can be a spreadsheet import target. Dynamic segments build
    themselves from rules.
  </Accordion>
</AccordionGroup>

<Card title="Launch a campaign" icon="paper-plane" href="/campaigns/overview">
  Target your segment with a message.
</Card>
