Custom fields for contacts and companies

Make your own fields (Vehicle, Policy number, Renewal date), group them in folders, choose the type, make them required, reorder and archive them, filter by them, and use them in emails.

Updated October 17, 2026

Every business can add its own fields to its contacts and companies. A limo company might add Vehicle and Flight number; an insurance agent Policy number and Renewal date. Each business's fields are its own: a client never sees another client's fields.

Fields are managed in the business's Settings → Custom fields, by owners and managers. The agency can switch this off for a client's business.

Field types

  • Single line and Multiple lines for text;
  • Number and Money;
  • Date;
  • Dropdown (pick one), Radio buttons, Dropdown (pick several) and Checkboxes (pick several), each with its own list of choices;
  • Checkbox (yes / no);
  • Phone, Email and Web address, checked like the contact's own;
  • File upload: files kept on the contact (private, opened with a short-lived link).

A field's type can't be changed after it's made, because the values already saved would stop matching it. Make a new field instead.

Settings for each field

  • Name, a placeholder (the gray hint in an empty box) and help text;
  • Default value: filled in on every new contact that doesn't have a value, however it arrives (by hand, a form, an import, a webhook). It's checked like any value, so a dropdown's default must be one of its choices;
  • Required: people editing a contact by hand must fill it. Website forms, imports and webhooks can still save a contact without it, so no lead is lost;
  • Folder: groups fields into sections on the contact page (for example "Policy" or "Vehicle"). Deleting a folder keeps its fields;
  • Order: drag fields into the order the contact page shows them.

Removing a choice from a dropdown keeps it on contacts that already have it; it just can't be picked again.

Archive and reactivate

Archive hides a field everywhere but keeps every value. Reactivate brings it back exactly as it was. A website form with a field of the same name reactivates the archived field rather than making a second one.

Filtering by a field

Smart lists and filters compare fields by type:

  • text: is, is not, contains;
  • numbers and money: is, is not, is greater than, is less than;
  • dates: is, is before, is after;
  • choices: is, is not; pick-several fields: includes;
  • yes / no: is;
  • every type: is empty, is not empty.

Using fields in emails

Each field has a key, set when the field is made, for example policy_number. Emails (coming with automations) fill {{contact.custom.policy_number}} with the contact's value, and {{contact.first_name | there}} shows "there" when the value is empty. Renaming a field doesn't change its key, so templates keep working.

Built for automations

Fields are tracked by a fixed id, not their name, and every change to a value is recorded with its old and new value. When automations arrive, "Renewal date changed" or "Policy type is Home" can start or steer one without any setup again.

Didn't find what you need?

Send us a message — no sign-in needed — or email support@the-contentforge.com. Already a customer? Sign in to submit a ticket.

Contact support