What are text tags?
Text tags let you design once—in Word, Google Docs, or your PDF—and skip manual field placement later. By adding simple “anchor” keywords to your document, SignNow detects those tags on upload and converts them into the right fields for each recipient (signature, date, text input, etc.). That means faster prep, consistent layouts, and fewer mistakes.
This is especially useful when:
Your documents are generated by a CRM/ERP or Make/Zapier flow.
You send the same form in bulk and want identical field positions every time.
Legal/ops teams prefer working in Word/Docs and don’t want to rebuild templates after every edit.
You version documents frequently (new clauses, branding) and need fields to “snap” into place automatically.
Text tags can be simple and complex. Simple text tags are added directly to a document in SignNow and automatically turn into fields when the document is uploaded—no coding required. Complex text tags, on the other hand, are added via the API and allow for more advanced configurations, dynamic field placement, and integration with automated workflows. In short, simple tags are for quick, manual setup, while complex tags are for programmatic, customizable use.
Text tags ordering
The format of tags is positional, so their properties must be correctly ordered.
The order of simple text tags is the following (the properties in bold are required):
{Type of the field}{Required}{Role}{Label}{Prefilled text}{Text horizontal alignment}{Text vertical alignment}{Lock signing date}{Height multiplier}{Dropdown}{Width}{Height}{Validator ID value}{Radio name}{Radio value}{Checked}{Link}{Hyperlink hint}
Simple Text tag example
A required signature field for the role 'CEO': width '100', and height '15' | {{t:s;r:y;o:"CEO";w:100;h:15;}} |
The tag can have multiple lines with page breaks before or after a colon or semicolon.
Make sure to use double quotes (") inside the tag syntax.
Property | Key | Values | When to use |
Field type |
|
| Always |
Required |
|
| Always |
Role |
| String with a role name. Allowed symbols: letters, digits, and | Always |
Label |
| String with a field label. Allowed symbols: letters, digits, and | Only with text, dropdown, and file fields |
Prefilled text |
| String with a prefilled text. Allowed symbols: letters, digits, and | Only with text fields |
Text horizontal alignment |
|
| Only with text fields |
Text vertical alignment |
|
| Only with text fields |
Lock signing date |
| Whether to set the current date of signing by default. | Only with text fields |
Height multiplier |
| If height = 20 and i = 3, the SignNow field is 60 points high. | Only with text fields |
Dropdown |
| Dropdown options separated by commas. Allowed symbols: letters, digits, and | Only with dropdown fields |
Width |
| Field width in pixels. | Any field type. If not indicated, the field is of the tag width. |
Height |
| Field height in pixels. | Any field type. If not indicated, the field is of the tag height. |
Validator ID |
| Use to validate filled data against certain formats. For possible values, see Data validators. | Only with text fields |
Name of the radio button group |
| String with a name for a group of radio buttons. Allowed symbols: letters, digits, and | Only with radio buttons |
Radio button value |
| String with the value of a radio button. To create a group of radio buttons, create a tag for each radio button with the same group name and different values. For more information, see Radio buttons. | Only with radio buttons |
Checked |
|
| With radio buttons and checkboxes |
Link |
| Hyperlink. | Only with hyperlinks |
Hyperlink hint |
| String with a hyperlink hint that appears in the field. Allowed symbols: letters, digits, and | Only with hyperlinks |
CC email |
| Add a CC recipient of the document. | Only with |
Radio buttons are created using the following tags:
rn- a name of the group of radio buttons. Several radio buttons related to one question comprise a radio button group. To add a radio button group, add several text tags with the samern.rv- a radio button value. Create a separate text tag for each value.checked- determines whether the button is checked by default. Possible values: 0 - unchecked, 1 - checked.
Example:
{{t:r;r:y;o:"Customer";rn:"Do you consent to the terms and conditions?";rv:"Yes";}} {{t:r;r:y;o:"Customer";rn:"Do you consent to the terms and conditions?";rv:"No";}}
Use invite text tags to send an invite to sign immediately after uploading a document. This way, you won't need to send a separate POST /document/invite request.
To use an invite tag:
Add one or more simple text tags to your document to create fields.
Add a tag with the following structure:
{{t:e;o:"Role1";e:"signer@mail.com";}}to your document.
Invite tag for a document with two signatures
{{t:s;r:y;o:"Manager";}} {{t:s;r:y;o:"Client";}}
{{t:e;o:"Manager";e:"<signer1@mail.com>";order:1;}} {{t:e;o:"Client";e:"<signer2@mail.com>";order:2;}}
order parameter indicates signing order and is optional.
