Skip to content
NewSee how

Organize contacts with Lists & Tags

Use lists and tags to segment contacts, bulk-tag in one action, rename or merge tags, and move contacts between lists. Safely, without accidental campaign enrolment.

  1. Understand lists vs tags

    Lists are containers a contact belongs to (and can feed a campaign). Tags are freeform labels for cross-cutting segments: things like vip or warm-lead. A contact can sit in several lists and carry many tags at once.

  2. Select contacts to organize

    On Contacts, tick rows (or choose “select all matching filters”) to reveal the bulk action bar.

  3. Bulk-add tags

    Open Edit tags, stay on the Add Tags tab, type a tag, and press Enter to chip it. Click Apply to tag every selected contact at once.

    Bulk-add tags
  4. Bulk-remove tags

    Switch to the Remove Tags tab, check the tags to strip from the selection, and Apply.

  5. Rename or merge a tag

    In Manage tags, rename a tag from its row. If you rename it to a name that already exists, FirstSales asks to merge the two into one tag instead of creating a duplicate.

  6. Move contacts to another list

    Open Transfer, pick Move, choose a source list and a different destination list, and confirm. Moved contacts are removed from the source once the move completes.

  7. Clear the enrolment warning

    If the destination list feeds a live campaign, the transfer stops and shows you the affected campaigns plus the net-new count of contacts that would be enrolled. Nothing is written until you choose Enrol & transfer: only confirm if you mean to start sending to those contacts.

Pro tips

  • Use Add, not Move, to build overlapping segments

    Add puts contacts in a second list without removing them from the first: good for building an 'all prospects' master list alongside narrower ones.

  • Tags are case-insensitive

    Tags are stored lowercase, so `VIP` and `vip` are the same tag: no accidental duplicates from casing differences.

  • Renaming into an existing tag merges them

    It's the fastest way to consolidate near-duplicates like `warm`, `warm-lead`, and `warmlead` into a single tag.

  • Narrow big filters before a bulk move

    Filtered transfers are capped at 10,000 contacts. Tighten your filter first if you're moving a larger segment.

Frequently asked questions

What's the difference between a list and a tag?

A list is a container a contact belongs to (and can feed a campaign); a tag is a freeform label for filtering and segmentation. A contact can be in several lists and carry many tags.

Does moving contacts into a list start emailing them?

Only if that list feeds an active or paused campaign. When that's the case you'll get an explicit enrolment warning and must confirm before anything sends.

What's the limit when transferring everyone in a filter?

10,000 contacts. Narrow your filters first if you have more than that.

What happens to a tag when I delete it?

It's removed from every contact that had it. Deletion is confirmed before it runs.

Can I rename a tag without losing the old assignments?

Yes: renaming keeps every contact's assignment. If the new name already exists, the two tags are merged instead.

Is there a suppression / do-not-contact list?

No dedicated suppression list. To stop contacting someone, rely on unsubscribe/opt-out handling and exclusion segments: see the reply-handling tutorials.

List Management

Outreach that keeps going after you log off.Leads, emails, follow-ups and replies, handled.

Connect unlimited mailboxes and let AI agents find leads, write each email and follow up. Or send your own templates in manual mode. From $29/mo.

$1 for 3 days · Cancel anytime · No contract

Install with AI

Your coding agent sets up the FirstSales CLI and skills for you.

Prompt for Claude Code

I'm setting up FirstSales (https://firstsales.io), an AI outbound sales platform: campaigns, contacts, a reply inbox, deliverability and lead signals. Help me get my workspace sending real, good emails end to end, from Claude Code.

Read these first so you know how FirstSales works:
- Developer docs and API: https://developer.firstsales.io
- CLI: https://www.npmjs.com/package/@firstsales.io/cli
- Skills for coding agents: https://github.com/firstsalesio/firstsales-skills (read README.md and GUIDE.md)

Setup
1. Install the CLI: npm install -g @firstsales.io/cli
2. Install the FirstSales skills:
   claude plugin marketplace add firstsalesio/firstsales-skills
   claude plugin install firstsales@firstsales
3. Ask me if I already have a FirstSales account. If not, send me to https://app.firstsales.io to sign up.
4. Ask me to create an API key under Settings → API → API Keys, with only the scopes we need.
   Never ask me to paste the key into this chat. Tell me to run this in my own terminal, so the key stays hidden:
   read -rs FS_KEY && firstsales auth login --api-key "$FS_KEY"; unset FS_KEY
5. Run `firstsales whoami` and tell me which workspace and organisation we are connected to.

Then ask me about my business: what I sell, who I sell to (roles, company size, countries), my best customers, and what I use today for outbound (tools, lists, mailboxes). Walk me through:
1. Teaching FirstSales my business: website, offer, proof points and case studies in the knowledge base, so the AI writes like someone who knows the product.
2. Connecting my sending mailboxes and checking my sending domain: SPF, DKIM, DMARC and warm-up. If anything is unhealthy, tell me the exact DNS record to add.
3. Bringing in contacts: import my CSV or CRM export into a clean list, remove duplicates and bad emails, and block domains I must never email (customers, competitors, my own).
4. Building my first campaign: the right list, senders, steps and timing. Write the sequence with me, show me the drafts, and do not launch until I say yes.
5. Setting up Signals if it fits: find people engaging with LinkedIn posts about topics my buyers care about, and turn them into leads.
6. Inviting my team and giving each person the right access.

Once campaigns run, show me how to work the reply inbox from here: which replies need an answer, draft responses in my voice, and move good conversations into deals. If I use Cal.com, connect it so follow-ups can offer my booking link (not the first email).

Throughout, as you learn about my business, proactively suggest and help create:
- Reply templates for the questions and objections my prospects are likely to raise, based on my product, site and codebase if you can see them.
- Campaign ideas and segments worth testing, with the reason for each.

Safety rules:
- Show every change as a dry run (--dry-run) first and wait for my yes. Never send emails, launch campaigns or delete anything without my yes.
- Tell me before anything that spends credits, and how many.

Be opinionated. If the docs give a sensible default, just use it. Don't make me choose between five options.