Lastest offers three comparison engines and extensive configuration for reducing false positives.
Pixel-perfect comparison. Fast and deterministic. Best for most use cases.
Measures structural similarity between images. More tolerant of minor rendering differences while catching meaningful layout changes.
Human-perception-aligned comparison. Models how the human visual system perceives differences. Best for catching changes that users would actually notice.
Configure the default engine in Settings > Diff Sensitivity.
OCR-based two-pass comparison with separate thresholds for text vs non-text regions:
This dramatically reduces false positives from dynamic text and font rendering differences across operating systems.
Enable in Settings > Diff Sensitivity.
| Setting | Description |
|---|---|
| Diff engine | pixelmatch, SSIM, or Butteraugli |
| Text-region-aware | Enable OCR-based two-pass comparison |
| Pixel threshold | Number of different pixels to trigger a change |
| Percentage threshold | Percentage of different pixels to trigger a change |
| Classification | Unchanged / Flaky / Changed thresholds |
| Classification | Meaning |
|---|---|
| Unchanged | No meaningful difference detected |
| Flaky | Minor differences within the flaky threshold (likely noise) |
| Changed | Meaningful visual difference that needs review |
When configured, AI can automatically classify visual diffs:
Configure a separate AI provider for diff analysis in AI Configuration.
Mask dynamic areas from comparison:
Migration note: existing per-test ignore regions are migrated to a
step_labelofnull(apply-to-all). New regions are bound to the screenshot they were drawn on.
When the pixel diff is inconclusive (e.g. very small differences clustered around inserted/removed nodes), Lastest can run a structural DOM diff in addition to the pixel comparison. The DOM diff is computed from the captured DOM snapshot at screenshot time and surfaces the affected node tree alongside the visual diff. Toggle in Settings > Diff Sensitivity.
Compare test results against design files:
Detect vertical content shifts (inserted/deleted rows):
Built-in benchmark framework to compare all three engines: