Sends text as simulated keystrokes to the active window.

Simple substitution

Specify text to be sent to any application. Can also be used to simulate keyboard key presses.


This is a simple substitute text.

Multiple substitutes

The same abbreviation can trigger multiple substitutes which can be selected from the popup window. Use a delimiter as a first character in a new line to divide multiple substitute actions for the same abbreviation. Default delimiter is "/" which can be changed in Preferences > Text Expander. The popup window will appear next to the cursor to allow selection of the desired substitute.

kind regards
/best regards
/yours sincerely

To improve visibility, add a description prefix to multiple selections. In this case only description will appear on a popup window. The default description separator is "::" and can be changed in Preferences > Text Expander.

Long response:: Thank you for your message. I will get back to you asap.
/Short response:: Thank you for your message.

Macros and Variables

Substitute text can include advanced macro fields and variables, for example time, dates, system or user variables, etc. Substitute text can also interactively collect user input before inserting a substitute, for example manual text input boxes, selection fields, check box or radio button groups, drop-down menus, calendars or numeric input sliders. In the example below, macro fields are marked blue. To insert a macro field, select More button and then select a macro. More information: Macros and Variables.

Dear Mr. %INPUT_Customer%,
thank you for contacting us. The price is $%INPUT_Price%. Let's meet next %SELECT_Day%.
Thanks and best regards,

Randomized text

Random text generation syntax (also known as Spintax) is also supported. The below command will send randomly chosen "Hello world" or "Hi world" alternatives. There are many possibilities, nested syntax is also supported. You can also combine it with the power of existing FastKeys macros. This feature can be disabled in Preferences > Text Expander.

{Hello|Hi} world.

Simulating key presses

Send command can also be used to simulate key presses. In the below example, a Ctrl+End shortcut is used to move the cursor to the end of the paragraph and Enter key is pressed at the end. See the more details about the special modifier characters below. The recognition of modifier characters must first be enabled in Preferences > Text Expander.

This is a text^{End}
This another text{Enter}

Special characters

The following modifier characters have a special meaning in FastKeys:
  ^ - Ctrl key,
  ! - Alt key,
  + - Shift key,
  # - Win key.
This allows sending not only text but also other actions. To send those characters you need to put them in braces, like {^}, {!}, {+}, {#} or select Send Raw Text option. The recognition of modifier characters must first be enabled in Preferences > Text Expander. The example below shows two alternative ways to add a clipboard content to the substitute text.

This is the clipboard content: ^v
This is the clipboard content: {Ctrl Down}v{Ctrl Up}

Formatting options

Check Send HTML or Rich Text option to send formatted text.


Library - Select preset command from the Library.

Record - Create a command by recording a Macro.

More - Insert special fields and macros or select more options.


Variables and macros