A catch-all domain collects mail for every alias you have ever handed out, which is exactly what makes it useful and exactly what makes it painful to back up. Restore the whole thing as one mbox and you lose the connection between an address and the project it belongs to. The fix is to export per-message .eml files keyed by Delivered-To plus a timestamp, so any single message can be found and re-imported on its own. This guide walks through building that archive, naming it correctly, and re-importing selectively when a tool wipes its inbox state.
Why Delivered-To Is the Only Reliable Key in a Catch-all Archive
A catch-all inbox receives emails sent to any address on the domain, so the To header is close to useless as a filing key. Spammers forge it, mailing lists rewrite it, and BCC deliveries leave it pointing at an address that never existed. The Delivered-To header is written by your mail server at the moment of delivery and records the actual envelope recipient. That is the alias the sender used, and it is the alias you mapped to a project, a tool, or a client. For link building work it might be the address you fed into GSA SER or RankerX for one tier; for outreach it might be a domain-specific alias you registered three months ago.
Filenames built from Delivered-To plus a timestamp give you a flat, sortable, greppable archive. Something like [email protected] tells you when the message arrived and which alias received it without opening the file. When you need to restore state for one project, you filter on the alias string and copy only those files. No full mailbox restore, no re-downloading gigabytes of junk, no guessing which of forty thousand messages belonged to the campaign you are rebuilding.
What a good export looks like on disk
One directory per month, one .eml per message, and the Delivered-To value sanitized into the filename with the @ replaced by an underscore or an at-sign if your filesystem tolerates it. Keep the raw headers intact inside each file; never strip Received, Delivered-To, or Return-Path lines during export. If you are pulling from a POP3 catch-all mailbox, most clients will download and delete by default, so switch that off before the first sync or you will be reconciling against an empty server. IMAP access is better for this job because you can leave messages on the server, fetch in batches, and verify counts afterward. AllMail offers POP3 and IMAP access on its catch-all domains, which matters here because you want the export to be a copy, not a move.
Store the archive somewhere that is not the same machine running your scrapers. A tool like GSA Search Engine Ranker can chew through disk and occasionally corrupt its own data directory, and if your only .eml backup lives beside it you have a problem. A cheap object store bucket or an external drive synced nightly is enough. Compress per-month directories with zip or 7z so a year of catch-all traffic takes a fraction of the raw size.
Building the Export Pipeline Without Breaking Alias Mapping
The simplest pipeline is a scripted fetch over IMAP that reads the Delivered-To header, builds the filename, and writes the .eml to disk. Python with imaplib and email.parser handles this in under fifty lines. Pull the UID list for the folder, fetch each message with BODY.PEEK[] so you do not set the Seen flag, parse the headers, and write the bytes verbatim. Do not re-serialize the message through a library that might rewrite headers or rewrap MIME parts; write the raw octets the server returned.
If you are on POP3 instead, fetch with TOP or RETR and keep a local ledger of message IDs you have already archived so a re-run does not duplicate files. POP3 has no folder concept and no UIDL stability guarantee across providers, so IMAP is worth the extra setup. Either way, keep a manifest file that logs filename, Delivered-To, Date header, size, and message ID. The manifest is what lets you answer questions like “how many messages did alias X receive last week” without parsing thousands of files.
Handling duplicates, retries, and partial exports
Duplicates happen when a retry pulls the same message twice, and they are easy to catch if you key on Message-ID plus Delivered-To. Hash that pair and skip if the hash already exists in the manifest. website is worth a closer look. Partial exports happen when the connection drops mid-batch; resume from the last recorded UID rather than starting over. Run the export on a schedule that matches your traffic, nightly for active campaigns and weekly for dormant aliases.
One thing worth doing early: verify each alias is actually receiving before you archive it. A quick test send to a random string at your catch-all domain confirms catch-all reception is working and that the Delivered-To you expect is the one the server writes. Tools that generate aliases on the fly sometimes hand out addresses that bounce, and you will not notice until a campaign underperforms. A catch-all domain service that monitors DNSBL blacklists also saves you from archiving mail that never arrived because your sending IP got listed. AllMail runs blacklist alerts and offers a 3-day free trial, which is a low-risk way to test whether the Delivered-To behavior matches what your export script assumes.
Selective Re-Import When a Tool Loses Its Inbox State
Sooner or later GSA SER, RankerX, or Xrumer will lose track of which emails belong to which accounts. Sometimes it is a database corruption, sometimes a botched update, sometimes a user error during a project reset. When that happens, the instinct is to point the tool at the mailbox and let it re-download everything. That works, but it takes hours and it re-ingests mail from every unrelated project on the domain. With a keyed .eml archive you instead copy the subset of files matching the affected alias into a fresh IMAP folder, point the tool at that folder, and let it process only those messages. Verification runs finish in minutes instead of hours.
The mechanics depend on the tool. GSA Search Engine Ranker reads from POP3 or IMAP accounts you define, so a temporary account pointing at the filtered folder is the cleanest route. RankerX and Xrumer have similar email account configuration and will happily consume a small folder of .eml files if you import them into a mailbox first. Thunderbird makes the staging step easy: drag the selected .eml files into a local folder, then either use it directly or copy to the server. Either way, the alias mapping survives because each message still carries its original Delivered-To header.
Timestamps in the filename give you a second lever. If you know the tool lost state at a specific time, you only need to re-import messages that arrived after the last successful verification. Sort by timestamp, filter to the alias, take everything after the cutoff, and you have a minimal recovery set. This is the difference between a ten-minute fix and an afternoon spent watching progress bars.
If you are running anonymous catch-all email across many projects, the archive also doubles as your audit trail. When a client asks which addresses you used on their campaign, you can list them from the manifest without touching the live mailbox. When a provider asks about abuse, you can show the timestamps and the sending pattern. Keeping the archive keyed and local is a quiet operational advantage.
Payments are worth a mention because they affect how you provision the underlying domain. AllMail accepts crypto payments including USDT and USDC on TRC-20, BEP-20, and Polygon, and requires zero KYC, so setting up a new catch-all domain for a project does not require identity verification or a card that ties back to a real name. That fits the anonymous signup model most link builders run, and it means you can spin up a throwaway catch-all for a single campaign without leaving a paper trail you have to explain later.
Start by writing the export script against a single test alias and confirm the Delivered-To value shows up in the filename as expected. Run a full monthly export, check the manifest count against the server folder count, and only then schedule it. Test a selective re-import into a scratch folder with a tool you use daily, so the recovery procedure is proven before you need it under pressure. Keep the manifest and the .eml files together, back them up off the scraper machine, and you will never again face a full mailbox restore just to recover one campaign’s verification state.
