Skip to main content
A Date field captures a calendar day. The submitter picks a date, and you control the format of the stored string and any earliest or latest limits.

When to use it

  • Launch dates, send dates, due dates, anything that represents a calendar day.
  • A date that needs a specific stored format, such as YYYYMMDD for use in a code or a URL.
  • A date with business-rule limits, such as no past dates or no more than a year out.
Do not use a Date field when you need a time of day. Date fields store a calendar day only, with no hour or minute.

How a value is produced

When a submission is saved, Terminus Hub stores the date the submitter picked, or the Default value if the field was left blank. The value is built in this order:
  1. Reads the picked date, or resolves the Default value. A default such as today or +7d resolves to a concrete date at the moment the submission is saved.
  2. Formats it from the parts in Date format, in their listed order, joined by the separator.
Validation reads the same date and checks it against Minimum date and Maximum date, which accept the same expressions as Default value.

Settings reference

Relative expressions use the units d (days), m (months), and y (years), for example +7d, -30d, +1m, +1y. In the field editor, include the sign (+5d, not 5d). The value today resolves to the current day. Fixed calendar dates such as 2026-11-15 are not accepted: the editor rejects them with “Has invalid format”. The three must be in order: Minimum date no later than Default value, and Default value no later than Maximum date. An out-of-order value shows “Should not be earlier than” or “Should not be later than” the other setting, and is not saved. For this check a month counts as 30 days and a year as 365, so -1m and -30d count as equal.

Build the date format

In Date format, click the + button (Add date part) and pick Day, Week, Month, or Year. Each part can be added once. Choose a format for each part, drag parts to reorder them, and type an optional separator of up to 10 characters in the small sep box. The preview next to it shows today’s date in your format. A new part starts on numeric.

Typing, pasting, or importing a date

Besides picking a day from the calendar, a submitter can type or paste a date into the field or a grid cell, or bring dates in with a CSV import. Terminus Hub reads these spellings:
  • Year first with dashes or slashes: 2026-01-15 or 2026/01/15. A 2026-01-15 date can also carry a time, such as 2026-01-15T10:30:00. Only the day is stored.
  • A month name with a four-digit year: January 15, 2026, Jan 15, 2026, 15 January 2026, 15-Jan-2026, or 2026-Jan-15.
  • When you type or paste in the builder, your browser’s own date format as well, such as 01/15/2026 in the US or 15/01/2026 in the UK. A CSV import does not use your browser’s format.
Text typed into the date box that cannot be read is undone when you leave the box. A value pasted into a grid cell or brought in by a CSV import that the builder cannot read is kept as written. Terminus Hub refuses a value it could misread rather than guess, and once the submission is saved the cell says why:
  • An all-numeric date it cannot place, such as 01/02/2026 in a CSV import: “Use YYYY-MM-DD, YYYY/MM/DD, or a month name”.
  • A three-digit year, or a year before 1000, such as 999-01-15: “Use a four-digit year of 1000 or later”. A two-digit year gets one of the other messages, depending on how the date is written.
  • Digits with no separators, such as 20260115: “Separate the year, month and day, as in YYYY-MM-DD”.
  • A value with no year, such as March 5: “is not a complete date”.
A day past the end of its month rolls into the next month, so 2026-02-30 is stored as 2 March 2026.

Example

A launch_date field in a Campaign URL Builder model: A submitter opening a new submission on 2026-11-15 sees launch_date pre-filled with that day. The stored value formats as 2026_11_15: three components joined by _. A submitter trying to save a past date such as 2026-10-01 gets a validation error: Date must be on or after 2026-11-15.

Gotchas

  • Relative defaults resolve when the submission is saved, not when the field was created. A field with a Default value of today set last year still gives today’s date to a submission saved today. The same applies to a Minimum date of today.
  • A numeric format sorts; a named-month format does not. The date is stored as the formatted string you see. 2026_11_15 sorts correctly next to 2026_11_16. 15-Nov-2026 does not sort by calendar order. When a date feeds a Concatenation or a column you sort by, prefer zero-padded numeric parts.
  • Only iso weeks follow ISO numbering. The numeric and padded week formats count weeks starting on Sunday, so they can differ from ISO week numbers near the start of the year.
  • Weeks are not a relative unit. Only d, m, and y work in relative expressions, even though Week is a date format part. An expression like +2w does not resolve.
  • A date format is required. You cannot save a Date field with no parts in Date format. There is no implicit default format.
  • Limits and defaults are relative only. Default value, Minimum date, and Maximum date take today or an offset such as +30d. To stop a date from going past a fixed deadline, pick an offset and update it as the deadline approaches.
  • Concatenation field: dates often feed a concatenated value, which is why format choice matters.
  • Text field: another entered field, for values that are not calendar dates.
  • Fields