Skip to main content
Custom fields let you extend a contact’s record with any data point that matters to your business. Think birthday, account number, subscription tier, loyalty points, preferred language — anything you’d otherwise keep in a separate spreadsheet.
Custom fields list in Xobito

Why custom fields matter

Custom fields are what make WhatsApp messaging feel personal at scale. Once a field exists, you can:
  • Show the data on the contact form for every team member.
  • Import the data in bulk from CSV.
  • Capture the data via Bot Flows and store it back on the contact.
Custom field values are stored on each contact in a single JSON object keyed by the field’s slug.

The six field types

Xobito supports six custom-field types — pick the right one when you create the field:
TypeWhat it storesTypical use
Text FieldSingle-line free text (max 255)Short notes, IDs, short labels
Text AreaMulti-line text (max 2000)Longer notes, addresses, descriptions
Number FieldNumeric valueLoyalty points, account balance, age
Date FieldA calendar dateBirthday, renewal date, sign-up date
DropdownOne value from a fixed listPlan tier, region, priority
Multi-select CheckboxesMultiple values from a fixed listPreferences, interests, opt-in categories
Use Dropdown whenever the values come from a short, fixed list — it keeps your data clean and prevents typos like “pro”, “PRO”, and “proo”. Use Checkboxes when more than one value can apply at once (e.g. “Interested in: Offers, Newsletter, Events”).

What’s on a custom field

Each custom field has these attributes:
AttributeDescription
Field labelThe human-readable name shown on the contact form.
Field name (slug)The machine-friendly name — used as the CSV column name and the key in the contact’s JSON data.
Field typeOne of the six types above.
OptionsFor Dropdown and Checkboxes — the list of allowed values.
PlaceholderGrey hint text shown inside empty inputs.
DescriptionHelp text shown below the field on the contact form.
Default valuePre-filled when creating a new contact.
Is requiredIf on, the field must be filled before a contact can be saved.
Display orderDetermines where the field appears on the form — managed automatically per workspace.
Is activeLets you hide a field without deleting it.
Show on tableWhether the field appears as a column on the main contact list.

Open the Custom Fields library

In the sidebar, go to Contacts → Custom Fields. You’ll see every custom field your workspace has defined, along with its slug, field type, and options.

Create a custom field

1

Click 'Add Custom Field'

Opens the field form.
2

Enter a label

The human-readable name, e.g. “Birthday” or “Plan Tier”.
3

Set the slug

The slug is auto-generated from the label (e.g. birthday). It’s used as the CSV column name and is how the value is stored on each contact. Use lowercase letters, digits, and underscores.
4

Choose the field type

Pick from Text, Text Area, Number, Date, Dropdown, or Multi-select Checkboxes.
5

Add options (Dropdown / Checkboxes only)

If you picked Dropdown or Checkboxes, list the allowed values one per line.
6

Fill in helper settings (optional)

Placeholder, description, and default value to guide your team as they fill out contacts.
7

Mark as required (optional)

If this field must be filled for every new contact, tick Required. Required fields block saving a contact if left empty, and reject CSV rows that don’t include the column.
8

Toggle 'Show on table' (optional)

If you want this field to appear as a column on the main contact list, turn this on.
9

Save

The field appears immediately on the contact form, CSV imports, and (if enabled) the contact-list columns.

Edit or delete a custom field

1

Open Custom Fields library

Find the field in the list.
2

Edit or Delete

Editing lets you change the label, options, placeholder, description, required, active, or show-on-table settings. Deleting removes the field and every contact’s value for it permanently.
Deleting a custom field wipes all values stored for it across every contact. Export your contacts first if you might need the data later.

Fill in a custom field value

On the contact form

Every active custom field appears below the standard fields on the add-contact and edit-contact forms. Fill them in when adding or editing a contact.

During CSV import

Add a column whose header matches the field’s slug (not the label). See Import from CSV.
firstname,lastname,type,phone,status_id,source_id,plan,birthday,loyalty_points
Alex,Morgan,customer,+14155551234,2,1,Pro,1990-05-12,500
Priya,Shah,lead,+919876543210,1,3,Basic,1988-11-02,120

Via a Bot Flow

A Bot Flow can ask the contact a question and store their reply in a custom field. Example: “What’s your account number?” → store the reply in the account_number field. See Bot Flows.

Data type rules

TypeAccepted input
Text FieldAny text up to 255 characters.
Text AreaAny text up to 2000 characters.
Number FieldNumeric values only — 500, 49.99. Text like “five hundred” is rejected.
Date FieldA valid date. Invalid dates are rejected on the form and skipped in CSV.
DropdownMust match one of the options you defined.
Multi-select CheckboxesOne or more values from the defined options.
Invalid values on the contact form show an inline error. Invalid values in a CSV cause the row to be skipped — with the exact reason in the import log.

Custom fields in the API

Custom fields are stored on each contact, but are not currently serialised into the contact API response. If you call Xobito’s contact list or read API, the custom-field values will not be included in the payload. This is a known limitation — for now, custom fields are most useful inside the Xobito UI, in CSV imports, and in Bot Flows. See Developer API for the latest details.

Best practices

Create every custom field you need before your first CSV import. Retrofitting fields after import means re-uploading data.
If the value has a handful of possible options, use Dropdown or Checkboxes. Dirty free-text (“pro”, “Pro”, “PRO”) ruins segmentation.
Slugs like plan_tier or last_purchase_date are easier to use in CSV and in automations than “Plan Tier (2026)”.
Required custom fields block manual entry and reject CSV rows without the column. Only mark a field required if you truly have data for every contact, every time.
Don’t store passwords, full payment details, or government ID numbers in custom fields. Xobito is a messaging platform — not a secure vault.

Dynamic templates

Merge contact data into template variables at send time.

Import from CSV

Populate custom fields in bulk from a spreadsheet.

Bot flows

Capture contact replies and store them in custom fields.

Developer API

Read and write contact data programmatically.