Segment Sprawl Has a Kill Switch: How Customer.io Auto-Archive Decides a Segment Is Unused
In 2006, NPR reported that the original telemetry tapes of the Apollo 11 moonwalk were missing. NASA launched a search that ran for three years, combing a government warehouse one search leader compared to the one at the end of Raiders of the Lost Ark. In July 2009 the team gave up and announced its conclusion: the tapes had probably been erased in the early 1980s. A magnetic tape shortage had led NASA to wipe old tapes and reuse them for satellite data. "I don't think anyone in the NASA organization did anything wrong," said Dick Nafzger, the TV specialist who helped lead the search. "I think it slipped through the cracks."
The recycling programme was rational. New satellites needed tape seven days a week, old tapes sat unused on shelves, and nothing marked one box of telemetry recordings as the first moonwalk. An automated tidying process did exactly what it was told... because nobody had written the exemption list.
Customer.io now has an automated tidying process of its own. On 30 June 2026 it shipped auto-archive: an off-by-default, workspace-level setting that runs a daily pass and archives data-driven segments that nothing references. Our view: turn it on. But read the criteria first, because the word "unused" is doing all the work—and write your exemption list before you flip the switch, not after. This post covers what auto-archive checks, what it will never touch, the edges of its definition, and a rollout recipe.
Why do old workspaces drown in segments?
Segments pile up because they're cheap to create, referenced invisibly, and scary to delete. Every campaign brief spawns two or three. Every A/B test leaves a cohort behind. Two years in, the Segments page is 300 rows deep and nobody remembers which ones still matter. Deleting feels dangerous because a segment might be load-bearing: it could be triggering a campaign, feeding an ad audience, or sitting inside another segment's conditions. So nobody deletes anything, and the sprawl compounds.
The tooling has leaned the same way. Guides teach you to build segments—ours included, in the complete guide to advanced segmentation in Customer.io—and nothing teaches you to retire them. Customer.io has long offered manual archiving, which hides a segment without deleting it and refuses to archive anything currently in use. Each segment's Usage tab shows where it's referenced. But manual archiving is a chore someone has to remember, and quarterly clean-up rituals die the first busy quarter. Until 30 June 2026, hygiene depended on a human.
What does auto-archive actually check?
A data-driven segment is auto-archived only when all of the following hold, per the segments documentation:
- It's a data-driven segment, not a manual segment.
- "It isn't referenced by an active campaign, a draft newsletter, a SQL import, a team member's dashboard, another segment, or an external audience (such as Facebook or Google Ads)."
- It isn't marked as exempt.
- It hasn't been edited within your configured age threshold.
- It matches the kinds of segments you chose to archive: unused segments, or segments referenced only by newsletters that have already been sent.
Every criterion must be true. One active reference, one recent edit, or one exemption flag keeps the segment out of the archive.
The mechanics are conservative. The docs state that "auto-archive is off by default", and your workspace checks for stale segments daily at 00:00 UTC. Archiving is reversible: you can unarchive or restore any segment the pass took, the same way you'd unarchive a manually archived one. Each archival lands in your audit log as a "Segment updated" event, so there's a paper trail. If more than 1,000 segments qualify at once, the clean-up may take a few days. And there's no way to trigger the pass manually or through the API—it runs on its own schedule or not at all.
One boundary is absolute. The docs are blunt: "This setting does not automatically archive manual segments." If you maintain manual segments—CSV uploads, API-managed lists—auto-archive will never touch them.
Where are the edges of "unused"?
The reference list is precise, and its edges deserve attention before you trust it.
Start with the age threshold: it measures edits, not activity. The setting reads "archive segments unused for at least" 3, 6, 9 or 12 months, but the criterion is how long the segment has gone without being edited. A segment can gate thousands of sends a month and still count—membership changes and message volume aren't edits. Its protection has to come from the reference list instead, so the question becomes whether everything using it is on that list.
The list says "active campaign", and the settings page describes unused segments as "not used by any campaign". The docs don't spell out how a segment referenced only by a stopped campaign is treated, and we won't guess. The same goes for segments referenced only from outside the UI, such as audiences you query through the API: they don't appear on the reference list either. For both cases the safe move is the same—mark the segment exempt rather than bet on an inference.
One guarantee cuts the other way. Whichever eligibility option you pick, the docs state that "this feature never archives a segment referenced in another segment". Nested segment logic—suppression conditions built from other segments, compound audiences—is protected at the platform level.
Write the exemption list first
Exemptions exist because "referenced" and "deliberately kept" are different things. Customer.io's own docs suggest the review before the switch: maybe you keep a segment to track shared characteristics over time, but nothing triggers from it. That segment is unused by every measure the daily pass can see, and it's exactly the one you'd be annoyed to find archived.
Four kinds of segments belong on most exemption lists. Suppression audiences you consult before big sends—the deliberate quiet lists we covered in the art of not sending—may not be wired into any active campaign. Compliance cohorts, such as people in a regulated region or under a data-handling agreement, often exist for audits rather than sends. Seasonal audiences, like last year's Black Friday buyers, sit dormant for eleven months by design. And benchmark cohorts you're tracking over time, the docs' own example, trigger nothing and matter anyway.
Exempting is per segment: open the segment and select "Exempt from auto-archive". The setting is durable, too: if an exempt segment is ever archived and restored, it keeps its latest exemption setting.
What's the rollout recipe?
Turn the setting on deliberately, in this order.
- Inventory by usage. On the Segments page, filter by usage and segment type. You're looking for data-driven segments with no active references—the population the daily pass will judge.
- Exempt the deliberate keepers. Walk the unused list once, asking "would I mind finding this archived?" Suppression, compliance, seasonal, benchmark: exempt them now, while the list is in front of you.
- Choose the eligibility mode. "Unused segments" archives anything with no active references. "Newsletter-only segments" also catches segments whose only remaining references are newsletters that already went out, a common form of sprawl if you send one-off newsletters weekly.
- Set the age threshold. Start at 12 months, the gentlest option. You can tighten to 3, 6 or 9 months once you've watched a few cycles and trust the criteria.
- Enable, then review the first week. Turn it on under Workspace settings > Advanced > Auto-archive. Check the audit log for "Segment updated" events and skim the archived list. Anything that surprises you is either a restore-and-exempt, or evidence the criteria caught something you'd genuinely forgotten. This pairs naturally with a Monday operational scan—the same habit we recommend for the workspace performance dashboard.
After the first clean cycle, the chore is gone. Workspace hygiene becomes a setting, and the teams most afraid of flipping it—the ones with 300 segments and no memory of half of them—are the ones with the most to gain.
What does auto-archive not solve?
Auto-archive retires the dead; it doesn't organise the living. Two hundred active segments with names like "test_v2_final_REAL" are still two hundred badly named segments after the pass runs. Duplicates that are each referenced somewhere both survive. Naming conventions, a shared prefix scheme, and a habit of describing segments in their description field remain human work. They rest on the same discipline as your data itself—the foundation we covered in event schema for marketing teams.
Segment sprawl also has a cousin that no setting cleans up yet: profile attribute sprawl, the dead campaign state written onto customer profiles. That one still needs a deliberate fix, and journey attributes are the right tool for most of it. Auto-archive is one corner of workspace governance made automatic. The rest is still craft.
Frequently asked questions
Is it safe to turn on auto-archive in Customer.io?
Yes, with preparation. Auto-archive is off by default and reversible. A segment is only archived when it's data-driven, unedited within your age threshold, not marked exempt, and unreferenced by any active campaign, draft newsletter, SQL import, dashboard, other segment or external ad audience. The safe rollout is to inventory your segments, exempt the deliberate keepers, and enable it with a 12-month threshold.
What counts as an unused segment in Customer.io?
An unused segment is a data-driven segment with no active references. Per the docs, that means it "isn't referenced by an active campaign, a draft newsletter, a SQL import, a team member's dashboard, another segment, or an external audience (such as Facebook or Google Ads)". A segment also has to go unedited for your configured threshold—3, 6, 9 or 12 months—before auto-archive treats it as stale.
Does auto-archive delete segments permanently?
No. Auto-archive archives segments, it never deletes them. An archived segment moves to the Archived segments view, where you can unarchive or restore it at any time. Archiving is Customer.io's reversible middle ground: the segment disappears from your active list but its history stays intact.
Will auto-archive touch my manual segments?
No. The docs state that "this setting does not automatically archive manual segments". Auto-archive only evaluates data-driven segments. Manual segments—the ones you populate by CSV upload, workflow action or API—are outside its scope entirely, however stale they get.
What happens to a campaign if its segment gets archived?
An active campaign's segments can't be auto-archived: any segment referenced by an active campaign fails the criteria, so the situation doesn't arise. The docs don't spell out how segments referenced only by stopped campaigns are treated, so if a paused campaign's trigger segment matters to you, mark it exempt rather than rely on the reference list.
How do I restore a segment that was auto-archived?
Go to the Segments page, click Archived segments, find the segment and select Unarchive Segment. You can also select several archived segments and unarchive them in bulk. A restored segment keeps its latest exemption setting, so exempt it after restoring if you don't want next month's pass to archive it again.
How often does Customer.io check for stale segments?
Daily. Your workspace checks for stale segments at 00:00 UTC every day once auto-archive is enabled. If more than 1,000 segments meet the criteria, the docs note the archiving may take a few days to finish.
What age thresholds can I choose for auto-archive?
Four options: 3, 6, 9 or 12 months. The threshold measures how long a segment must go without edits before it's eligible—not how long since it last gated a send. Start at 12 months and tighten once you've reviewed a few cycles.
Can I trigger auto-archive manually or through the API?
No. The docs are explicit that there's no way to trigger auto-archive processing manually or programmatically through the API. The pass runs on its daily schedule. If you want an immediate clean-up, use manual archiving: select segments on the Segments page and archive them in bulk.
Will auto-archive break my ad audience syncs?
No. A segment referenced by an external audience, such as Facebook or Google Ads, fails the auto-archive criteria and stays active. Ad audience references count as usage, the same as campaigns and dashboards.
What are "newsletter-only segments" in the auto-archive settings?
Segments whose only remaining references are newsletters that have already been sent. They're a separate eligibility option because they're technically referenced—the sent newsletter still points at them—but nothing will ever use them again. Enabling this option catches the sprawl left behind by one-off sends.
How do I exempt a segment from auto-archive?
Open the segment from the Segments page and select "Exempt from auto-archive" from its menu. The exemption survives archive-and-restore cycles: a restored segment keeps its latest exemption setting. To remove it, use the same menu and select "Remove from auto-archive exemption".
Sources
- Automatically clean up stale segments. Customer.io Release Notes, 30 June 2026.
- How segments work. Customer.io Docs, updated 10 July 2026.
- Houston, We Erased The Apollo 11 Tapes. NPR, 16 July 2009.
Want this working in your Customer.io workspace?
It's what we do all day for SMBs—strategy, automations, deliverability and hands-on execution.
See how we work as a Customer.io agency →

