Run an action when text appears on screen
Building an OCR text trigger on Windows, and the settings that decide whether it is reliable
Steps
- Name the trigger and enter the query text. Use short, distinctive text that appears verbatim. "Ready" is a better query than "The raid is ready to begin" — OCR output varies, and matching is containment against what was recognised.
- Capture the area around that text. Tight is better. Extra UI clutter in the capture is the most common cause of false positives, because everything in the box is recognised.
- Set language codes and minimum confidence. Comma-separated codes, default
en. Confidence starts at0.60— lower it slightly if text is being missed, raise it if it fires on lookalikes. - Adjust preprocessing only if needed. Grayscale is on by default and usually helps. Upscale defaults to
1.0; raising it helps small or thin text. - Save, test in Action Monitor, then calibrate. Auto-calibration can suggest a better confidence and upscale value, and refine the area or query behaviour when manual settings are unstable.
The settings that actually matter
| Setting | Default | When to change it |
|---|---|---|
| Query text | — | Short and distinctive. Matching is containment in the recognised text, not an exact line match |
| Capture area | — | Tighten whenever you see false positives |
| Min confidence | 0.60 | Lower for misses, raise for false positives |
| Languages | en | Comma-separated codes when the UI is not English |
| Case sensitive | off | Turn on only when case distinguishes the match |
| Use GPU | on when available | Leave on; CPU fallback works but is slower |
| Grayscale | on | Leave on unless colour carries meaning |
| Upscale | 1.0 | Raise for small text |
When it misbehaves
| Symptom | Usual cause and fix |
|---|---|
| No OCR output at all | Area too small, text too small, or the text is not actually readable on screen. Enlarge the area slightly, raise upscale, and check the text renders legibly. |
| Misses too often | Confidence too high or the area is too tight around text that shifts position. Lower confidence slightly and give the area a little margin. |
| False positives | Confidence too low, or unrelated text inside the capture. Raise confidence and tighten the area. |
| Fires repeatedly | Cooldown on the binding is too low. The trigger stays true while the text is on screen, so the cooldown is what prevents repeats. |
FAQ
Does the query have to match exactly?
No. Matching checks whether your query text appears in the recognised output, so a short distinctive phrase works better than a full sentence. Turn on case sensitivity only when it matters.
Can it read text in more than one language?
Yes — languages are a comma-separated list of codes. More languages cost more per check, so list only what the UI actually shows.
Why is OCR slower than a pixel trigger?
Recognition is a model inference, not a colour comparison. It is still fast enough for most UI states, but a pixel or template trigger is the cheaper choice whenever it can describe the same condition.
Will it read text in an image or canvas?
It reads rendered pixels, so if the text is visible on screen it can generally be recognised — subject to size, contrast and the confidence threshold.
Try it
Free 7-day trial, no card required. Capture one label, set the query text, and watch the binding in Action Monitor before building on it.