Quick reference

The syntax, skim it in two minutes.

Placeholders, triggers, keyboard shortcuts. Everything here works on the free tier unless tagged otherwise. For worked examples and nested-macro patterns, see the full guide.

Placeholders

What you can put inside a macro body.

Placeholders resolve at expansion time. Each fires once per expansion; values come from the system, the clipboard, your selection, or an inline prompt.

[$DATE] Free

Today's date in ISO format (YYYY-MM-DD).

[$TIME] Free

Current time in 24-hour HH:MM.

[$DATETIME] Free

Full ISO timestamp with seconds and timezone.

[$TIME:format] Free

Custom-format time. Supported tokens: HH, hh, mm, ss, A (AM/PM). Example: [$TIME:hh:mm A].

[$PROMPT:Label] Free

Fires an inline modal for user input. Extended form is [$PROMPT:Label:type:default] where type is one of text, select, number, or textarea. For select, the third segment is comma-separated options (e.g. [$PROMPT:Color:select:red,green,blue]); for the other types it is the default value. Two-segment forms like [$PROMPT:RE: Subject] are treated as a plain text label.

[$CHOICE:a|b|c] Free

Pipe-separated dropdown picker. Lighter-weight than [$PROMPT] when only a menu is needed.

[$CLIPBOARD] Free

Inserts the current clipboard contents at the placeholder position.

[$SELECTION] Free

The current text selection, captured at expansion time.

[$CURSOR] Free

Marks where the caret lands after the macro expands.

[$COUNT] Free

Auto-incrementing counter. Uses a default bucket when no name is given.

[$COUNT:name] Free

Named counter. Each name gets its own persistent value (up to 500 distinct names per library).

[$RANDOM:a,b,c] Free

Picks one option at random. Separator auto-detects: pipe > semicolon > comma.

[$REPEAT:n:text] Free

Repeat text n times (safety-capped).

[$REPLACE:find:replace:text] Free

Plain (non-regex) find/replace on text.

[$TITLE:text] · [$TRIM:text] · [$LENGTH:text] · [$REVERSE:text] · [$SUBSTR:start:len:text] Free

String helpers: title case, trim, length, reverse, substring.

[$DIFF:A:B:format] Free

Diff two values. format is one of unified (default), arrow, beforeafter, or inline.

[$SELECTION_OR_CLIPBOARD] Free

The current selection if there is one, otherwise the clipboard. Useful when a macro should work whether or not you highlighted something first.

[$UPPER:text] · [$LOWER:text] Free

Upper-case or lower-case text.

[$URLENCODE:text] Free

Percent-encodes text so it is safe to drop into a URL.

[$REDACT:text] Free

Masks two things in text: email local parts (casey@acme.com becomes c****@acme.com, domain kept) and runs of 7 or more digits, where every digit but the last four is starred. It does not detect card numbers or national ID numbers.

[$1] … [$9] · [$0] Free

Tab stops. After the macro expands, Tab and Shift+Tab move between them in order, [$1] first and [$0] last. [$0] and [$CURSOR] mean the same thing. Each stop can carry a default: [$1:Hello] inserts that text and preselects it.

[$MY_NAME] · [$MY_TEAM] Free

Your name and team, read from Settings. Never from the page. If you have not set them, the token turns into a fill-in prompt at expansion time rather than inserting nothing.

[$TICKET_EMAIL] · [$TICKET_ID] · [$TICKET_COMPANY] Free

Ticket fields for helpdesk replies. Makro does not read them off the page - there is no extraction engine yet - so today each one resolves to a fill-in prompt with a localized label.

[$TAB] · [$ENTER] Free

Dispatches a Tab or Enter key event mid-expansion so one macro can move between form fields or submit. These are synthetic events, so a page that ignores scripted key events will not respond to them.

[$WAIT:ms] Free

Pauses the expansion for ms milliseconds before continuing, capped at 10 seconds. Pairs with the keystroke tokens on slow forms.

[$FILLFORM] Free

Takes the clipboard, splits it into lines, and types one line per field, tabbing onward as it goes. Stops as soon as the focus leaves an editable field.

[$IMAGE:url] Free

Inserts an image, in rich-text fields only. HTTPS only (unlike [$OPENURL], plain http is refused), and private or loopback addresses are refused.

[$OPENURL:url] Free

Opens a URL in a new tab as part of the expansion, with noopener,noreferrer. Accepts http and https, refuses anything else, and refuses internal or loopback addresses so a hostile page cannot steer it at a router or metadata endpoint. Capped at 5 opens per expansion.

[$DATE:format] Pro+

Custom-format date. Supported tokens: YYYY, YY, MMM, MM, DD, ddd, HH, mm, ss. Example: [$DATE:MMM DD, YYYY].

[$DATE+Nd] Pro+

Date math. Offsets: +3d, -1w, +2m, +1y. Append :format for custom output; otherwise defaults to YYYY-MM-DD.

[$DAYSUNTIL:YYYY-MM-DD] Pro+

Whole calendar days from today until the given date. Example: [$DAYSUNTIL:2026-12-25].

[$DAYSSINCE:YYYY-MM-DD] Pro+

Whole calendar days from the given date until today. Example: [$DAYSSINCE:2026-01-01].

[$CALC:expr] Pro+

Evaluate a math expression at expansion time. Operators: + - * / and parentheses. No modulo.

[$MACRO:hotword] Pro+

Nested macro. Depth capped at 3 to prevent loops.

[$IF:condition]...[$ENDIF] Beta

Conditional block. Renders inner text only when the condition matches; blocks can be nested. Currently beta-gated for Pro+ subscribers.

[$PROMPT:Label:select|number|textarea:default] Pro+

Extended [$PROMPT] form types. Free users still get the basic dialog, but the type segment (select, number, textarea) silently downgrades to plain text on free accounts.

[$REGEX:pattern:replacement:text] Pro+

Regex transform on the third segment text. Pattern is validated against catastrophic-backtracking before use.

[$OCR_RESULT] Pro+

Last Smart Copy OCR result from the session, inserted into a macro body. This placeholder itself requires Pro or Premium, independent of Smart Copy's own scanning and AI cleanup/Vision, which are available on every tier.

[%VarName] Beta

References a captured Page Variable. Part of the Page Variables beta program (same gate as Smart Fill).

Trigger keys

How a hotword fires.

Type the hotword, then press one of the trigger keys. Makro matches the word just before the caret; it will not fire mid-word.

space Fires inline expansion. Most common trigger.
tab Same as space; handy in form fields where space is meaningful.
enter Fires at end of line.
click In the /try sandbox: click a chip instead of typing.
Keyboard shortcuts

Opening the quick-search popup.

Both shortcuts open the same overlay - bind what fits your habits. Shortcuts are configurable in your browser's extension keyboard settings.

Ctrl+Shift+Space Ctrl+Shift+Space Open the quick-search popup.
Where next

Beyond the cheat sheet.

If you need worked examples for nested macros, regex transforms, or the full placeholder matrix with every format modifier, the deep-dive guide has it.

Skim-sized knowledge, built to fit in your head.