A merge tag (HighLevel's help docs usually say "merge field") is a placeholder that GoHighLevel replaces with real data at send time. It's written in double curly braces: {{contact.first_name}} becomes the contact's first name, {{custom_values.booking_link}} becomes the sub-account's booking link, and a custom field's tag uses that field's key, such as {{contact.loan_amount}}.
Merge tags work in emails, SMS, workflow actions, funnel and website pages, documents and many other places that accept text. They're case-sensitive, so a tag typed by hand has to match exactly.
In practice
The safe way to insert a merge tag is the picker in the email, SMS or workflow editor, which lists contact, user, appointment, opportunity, custom field and custom value tags. Emails also support a fallback value, so "Hi {{contact.first_name}}" can fall back to something like "there" when the field is empty.
Merge tags break quietly. If a field key is mistyped, or a tag is copied from one sub-account into another where that field doesn't exist, the message goes out with a blank where the data should be. Agencies that reuse templates across clients run into this when the same field has a slightly different key in different sub-accounts.
Where it shows up in RGS Tools
Field Finder's field browser shows the ready-to-paste merge tag on every custom field row, with one-click copy, and sub-account compare flags fields missing from one sub-account before a template breaks there. Every Sub-Account Manager bulk field creator run ends with the new fields' keys and merge tags, ready to copy or download.