A Concatenation field is computed. It joins the values of other fields on the same record, in the order you list them, separated by a character you choose. The classic use is a campaign name like
awareness-us-black_friday, built from a few dropdowns and a text field.When to use it
- Building one canonical string out of several inputs, for example a UTM campaign name from goal, country, and a short label.
- Producing a deterministic identifier that should always follow the same shape across submissions.
- Feeding a clean value into a Tagged URL parameter or a Short URL slug.
How it is configured
A Concatenation field is computed, so it is always required and submitters never type into it. In the field editor you set:
Each part references another field, not a literal string. Adding the same field twice is prevented, and you cannot add a new part until every existing part has a field selected.
When the submission is saved, Terminus reads each referenced field’s current value on that record, applies your empty-value rule, and joins the results with the separator.
A worked example
In the Campaign URL Builder, autm_campaign Concatenation field joins a goal dropdown, a country dropdown, and a campaign label into one tracking string.
goal is awareness, country is us, and campaign_label is black_friday, the field computes:
country blank, remove_extra_separators: true drops that part and the separators around it collapse:
remove_extra_separators, the same blank value would produce awareness--black_friday (two dashes where the country used to be). Switch to empty_field_replacement instead when you want a visible placeholder like na in that gap.
The resulting utm_campaign value is then a clean input for the utm_campaign parameter of a Tagged URL field.
Gotchas
- You cannot use both empty-value strategies at once.
remove_extra_separatorsandempty_field_replacementare mutually exclusive. The editor hides the replacement input while “Remove extra separators” is on. - Parts can only reference other fields. There is no literal-text part. To inject a fixed string, use a Constant field as one of the parts, or put the character in
separator(it then appears between every part). - The separator is inserted as-is, not URL-encoded. If the output flows into a URL, keep the separator URL-safe (
-,_,.) and avoid spaces or&. Encoding only happens later, inside a Tagged URL field. - A part that points at a missing or blank field contributes nothing useful. With
remove_extra_separatorsoff, a blank part becomes an empty segment; with it on, the part is dropped. Reordering or removing parts only affects records created afterward; existing approved records keep their stored value.
Related
- Field types overview
- Tagged URL field: the usual downstream consumer of a Concatenation value.
- Short URL field: can use a Concatenation value as a slug source.
- UTM tagging recipe