Custom Fields in Email Marketing: What to Store and Why
Custom fields should hold only the data you’ll actually use to personalize, segment or trigger emails. Everything else can stay in your spreadsheet or CRM. When you’ve got a forty-column file ready to import, it’s tempting to bring every column along “just in case”. Don’t. Ask one question of each column instead: will a message, a segment or an automation ever use it?
Which Contact Data Deserves a Custom Field?
A column earns a contact custom field only if it drives personalization, segmentation or an automation trigger. That’s the whole bar. Run each column through three questions:
- Will it appear in an email?
- Will it define a segment?
- Will a change in it start or stop a workflow?
The usual winners are first name, company, the plan or product owned, the renewal or signup date, and country or language. The usual losers? Internal notes, sales rep comments, raw lead-source IDs nobody ever filters on, and duplicates that mean the same thing under different headers (every inherited CRM export has a few of those). Before you import, mark every column keep, drop or maybe. Then treat each “maybe” as a drop. Harsh, but it works.
Collect Only What You Use: Data Minimization for Mailing Lists
Data minimization just means storing the smallest set of subscriber data fields that serves a clear, current purpose. And it pays off in very practical ways. Fewer fields, less to keep accurate. If data ever leaks, less of it is exposed. Signup forms get shorter and cleaner too. Same rule for forms, by the way: every extra form field should map to a field you already use in emails or segments. If it doesn’t, why ask for it? Every so often, go through your fields and retire any that no segment, template or workflow references.
Choosing Field Types for Contacts: Text, Number, Date, Dropdown
Pick each field’s type based on how you’ll filter the data, not on how it happens to look in the spreadsheet. Your options, roughly:
- Text for names and free-form values.
- Number for counts and scores you compare with “greater than” or “less than”.
- Date for signup, renewal, birthday and anything else time-based.
- Dropdown for a fixed set of options such as plan or language.
For categories, I’d go with dropdowns over text every time. They rule out spelling variants. Once “Pro”, “pro” and “PRO plan” all exist as values, a segment built on one of them quietly misses the other two, and nobody notices until a campaign underperforms. Clean up formats before the import, too: one date format throughout, and numbers stored without currency symbols. In MailCraft, custom fields support all four types, so each column can keep the type that matches how you filter it.
Custom Field Naming That Stays Clear a Year Later
A good field name tells a colleague what the value means, and in what unit or format, without them digging through any documentation. Pick one case style. Stick to it. Skip abbreviations only you understand. Where it matters, put the unit or format right in the name, like renewal_date or seats_count. Names tied to a campaign or a year, say spring_promo_2025, age badly and confuse whoever inherits the account after you. Keep a short field dictionary too: each field’s name, type, purpose, source and the person who updates it. Bonus: it makes mapping fields during CSV import a lot quicker, because every column already has an obvious destination.
Custom Fields vs Tags: When Is a Tag Enough?
Use a field when a contact has one value that can change, such as plan, city or renewal date. Use a tag for yes-or-no facts and for memberships a contact can have many of. Think “attended webinar”, “downloaded guide”, “interested in product X”. Tags can be applied and removed in bulk, which is handy for labels tied to events. Lists are a different thing again: they separate audiences you never mix, while tags describe contacts inside those lists. Fields and tags both feed dynamic segments. And with AND, OR, NOT segments you can combine them, for example paid-plan contacts who attended a webinar but haven’t downloaded the guide.
Keeping Subscriber Data Up to Date
A field is only useful while its value is right. So for each field, decide who or what updates it. In practice updates come from three places: re-imports from the CRM, signup forms and automation actions. On MailCraft Pro and Business plans, an automation can write a new value to a field, and a workflow can kick off when a field value changes, say when a plan moves from trial to paid. Oh, and plan for empty values. Personalization has to read well when a field is blank (nobody wants a “Hi ,” greeting), so set fallbacks for empty merge tags before you hit send.
That filter from the start? It holds all the way through. A handful of custom fields that are well typed, clearly named and actually used will serve you far better than forty columns copied over for no reason.
FAQ
How many custom fields should a mailing list have?
There’s no magic number. Keep as many as your emails, segments and automations actually use, and no more. Audit your fields regularly and remove the ones nothing references.
Should I import columns I might need later?
No. Leave them in the source system and add the field once a real use shows up. Importing later is easy. Cleaning up stale data nobody maintained is not.
What is the difference between a custom field and a merge tag?
The field stores the value on the contact. The merge tag is the placeholder that drops that value into an email. Set a fallback so contacts with an empty field still get a message that reads naturally.


