Recently I explored various options of creating email aliases.
I care about the following factors:
- [Critical] Limits: I may need to create ~100 or ~200 aliases.
 - [Critical] Retain email envelope: I should be able to see the original "from" and "to" addresses.
 - [Critical] Catch-all: I want to catch all emails that are sent to unknown addresses.
 - [Critical] Reliability: The service should "just work".
 - [Important] Easy to create a new alias: it should be easy to create a new one. API support would be ideal.
 - [Important] Tagging/Comment: I'd like to add a comment to an alias to remember why it was created. Note that the alias itself may be totally random
 - [Nice to have] Send As: it's nice to be able to send email as the alias.
 
Cloudflare Email Routing
- Maximum of 200 rules
 - A few clicks to create a new rule. There is easy-to-use API.
 - I saw an example where the service is not so reliable, there are also similar complains in the cloudflare forum.
 - Allows a catch-all rule.
 - In the web UI it doesn't allow adding comments to a rule. It is possible to set real_user+comment@gmail.com as the destination for gmail, but I'll need to verify each destinationas a separate email address, which is annoying.
 - The API supports adding comments to each rule
 - It doesn't support "send-as". But possible with standard SPF settings.
 
Overall I find this option very nice for casual usage.
Google Workspace Groups
- Unlimited groups, but an account can be an owner of at most 1000 groups.
 - Email envelopes are modified. I see "from group@ to user@" instead of "from sender@ to group@".
 - Lots of steps to create a new group, e.g. I need to allow external posting, bypass spam filter etc. There is API but difficult to use.
 - It is easy to set up catch-all rules.
 - Comments can be added to group description.
 - It does not support "send-as". But Gmail supports it with extra setup.
 
It is a deal breaker that the email envelopes are modified. Otherwise it can be an OK option.
Google Workspace Email Routing
For each alias, create a new routing rule.
- Maximum 1000 rules (recommended limit)
 - Email envelopes are not modified if using the correct options.
 - Difficult to add catch-all rules, because aliases are also unrecognized address.
 - It takes quite a few steps to create a new rule. No API support.
 - Comments can be added to the description of a routing rule.
 - It does not support "send-as". Maybe possible with some Gmail setup.
 
A good option if there are not so many aliases, and if it requires complicated routing logic.
Google Workspace Address Map
- Limt is 5000 or 300
 - Difficult to add catch-all rules, because aliases are also unrecognized address.
 - Easy to add new alises. Supports bulk import.
 - No support to comments, but possible to use "+comment" if the destination is a gmail address.
 - Does not support "send-as"
 
A good option if catch-all rules are not required.
Google Workspace Address List
Add all alises into one or more address list. Then add one routing rule to forward them.
- 100000 addresses per list.
 - Easy to add catch-all rules. Just skip the catch-all rules for the address lists.
 - Easy to add new aliases. No API support.
 - Does not support comments.
 - Does not support "send-as"
 
A good option if:
- comments are not required
 - it is OK to forward all aliases (in the same list) to the same destination
 
Google Workspace Email Alias
- 30 aliases per account
 - Easy to add catch-all rules.
 - Easy to add new aliases. With API support.
 - Does not support comments.
 - Supports "send-as"
 
A good option if "send-as" is required. Otherwise the limit is too small.
Others
There are other options that I have heard of, but not explored.
Comments