Email at to report bugs or request new features, metrics, and/or phrase sets for your user studies; if you are seeking consultation or want to collaborate on a research project evaluating a text entry technique(s).
: Enabled the use of custom phrase sets by copy-pasting the phrases into a text area. Each line must contain one phrase.
: Made the following updates:
Included a new option "Hide the virtual keyboard on "Enter" to force users to tap on the input area to see the keyboard". This option is useful when the keyboard under investigation does not refresh its predictions/buffer when on "Enter"
Included a new option "Display a "Next" button when the "Enter" key is not working". This feature is useful when a keyboard has no "Enter" key or the key does not fire a keydown event. The "Next" key works like a virtual "Enter" key. Participants can press it upon completion of a phrase to see the next one.
Included a subset of MacKenzie & Soukoreff's phrase set that includes the shortest phrases, which can come handy when evaluating smaller devices, such as Smartwatches.
Included a new option "Display a "Start" button to override the automatic detection of the start of text entry". When enabled, users have to press the button before they start composing a phrase. This feature is useful when the virtual keyboard composes text outside the input area, then pastes the text in the input area on "Enter"
Included a new option "Show asterisks instead of actual characters for the current word while typing" that masks the currently typed word. Mask is removed when the word is completed (i.e., the user enters a space) or when the user is editing it (i.e., enters a backspace). Text selection via mouse or keyboard shortcuts is disabled when this option is selected. Requested by A. Komninos.
Included a new option "Add border around the presented text" that adds padded border around the presented text. Requested by A. Komninos.
: Included a new option "Keep equal spacing between presented text and input area, input area and keyboard". When selected, the app maintains an equal distance from the presented text to the input area and from the input area to the keyboard. Requested by A. Komninos.
: Made the following updates:
Included a new expected_input parameter to events that signifies the input anticipated by the system (e.g., the letter/character the user was supposed to enter). This is predicted based on the presented text since it is almost impossible to predict what the user wishes to input without a source text to compare the transcribed text with. As a result, this cannot be predicted for free-from text entry. If the presented text is "movie" and the user types "mo" then the next expected_input is "v". WebTEM does not record expected_input (i.e., vents "") for word prediction, auto-correction, direct cursor control, keyboard shortcut, modifier key, backspace, and space entry since these actions are often automatic/triggered by the system (i.e., word prediction and auto-correction), the output is reliant on the corresponding actions (i.e., direct cursor control, keyboard shortcut, modifier key, and backspace), and the actual intent is unclear (i.e., incorrect space vs. space to trigger autocorrect, etc.). Requested by Katie Crowley.
Included a Marathi phrase set.
Added a Known Issues page to list known minor issues and limitations of the system.
Switched to Bitly URL Shortening Service since Google is discontinuing its URL Shortening Service on March 30, 2018.
: Made the following updates:
The metrics log now records phrase number (based on the order they appeared).
Added tooltips for new metrics.
Made the tooltips more user-friendly and responsive.
Improved form validation
Fixed a bug that redirected short URLs to a nonexistent directory
: Added an option to record the total number (and ratio) of single-character edits, i.e., insertions, deletions, or substitutions, needed to change the transcribed text to the presented text. These are calculated using the Levenshtein distance algorithm. Note that these are not categorization of different types of errors in the transcribed text, instead the types of corrections needed to fix the errors. However, one may use the following convention to convert these single-character edits to the types of errors in the transcribed text: substitution = substitution error, insertion = omission error, and deletion = insertion error. Requested by Y. K. Cheong.
: Made the following updates:
Fixed a bug in the asterisk protocol.
Categorized the Current Setting section for better presentation and understanding. Requested by Noirin Curran.
: Fixed a bug that occasionally entered carriage return in the text box instead of displaying the next phrase. Please let me know if you encounter this error. Reported by Noirin Curran.
: Made the following updates:
Updated the Copyright notice.
Updated the website template for better readability and look-and-feel. Requested by Johannes Střelka-Petz.
Included a Hide Introduction checkbox to enable experimenters to show/hide the introductory text before the form. Requested by Johannes Střelka-Petz.
Included a Show International Sets checkbox to enable experimenters to show/hide international phrase sets.
Improved the unique ID generator to make sure there is no overlap.
Included a Current Setting section to enable researchers to select the experimental setting. This can be particularly useful during in-the-wild study, where participants can fill out this section to indicate their current settings.
Included a feature to generate links to Pre-Populated Forms. Since this does not require participants to fill out a form, they can start participating in the study immediately. However, the researcher may decide to ask them to enter a unique ID (usually shared with the participants ahead of time), demographics, and current position/settings (could be beneficial in "in-the-wild studies"). Researchers can distribute this link via social network platforms, emails, text messages, etc. with their participants.
Also included a Short URL button that enables researchers to shorten the link for convenience (powered by Google).
Included a bullets/asterisks option that displays either bullets (•) or asterisks (*), depending on the browser, instead of the actual characters entered by the user during text entry.
Added a new section for recording user demographics.
Strengthened input validation.
: Made the following updates:
Included the support for the following metrics:
Input Time (IT): the time (in seconds) users took to enter a phrase.
Corrective Action Count (CAC): the total number of corrective actions, i.e., backspace & direct cursor control, per phrase.
Corrective Action Rate (CAR): the ratio (%) of the total number of corrective actions to the total number of actions per phrase.
Total Corrective Action Time (T-CAT): the total time (sec) the user took to perform the corrective actions per phrase.
Corrective Action Time Ratio (CAT-R): the ratio (%) of the total time the user took to perform the corrective actions to the total time s/he took to enter a phrase.
Added support for automatically adding input-stream length to the Metrics log file.
Added tooltips for new and rarely used metrics.
: Fixed some typos in the comments.
: Updated the citation (added page number and DOI).
: Included international metrics for non-Latin scripts, calculated using the output stream convention proposed by Sarcar et al., 2015.
: Hosted WebTEM: a Web application to record Text Entry Metrics.
Disclaimer—The application is distributed in the hope that it will be useful, "AS IS" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program is with you. Under no circumstances shall the authors have any liability hereunder for any loss or damage caused directly or indirectly from the use of this application.