Loki vs Screenshotbot
Loki
loki.js.orgScreenshotbot
screenshotbot.ioSide by side
| Figure | Loki | Screenshotbot |
|---|---|---|
| Price from | Free | $0.01/mo |
| Free plan | Yes | — |
| Free trial | — | Yes |
| Open source | — | — |
| Web | Yes | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| iOS | Yes | Yes |
| Android | Yes | Yes |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 4 |
| Spec score · Visual Regression Testing Software | 8.6 (#4) | 7.9 (#14) |
| Spec score · Visual Testing | 8.7 (#3) | 7.9 (#6) |
| Purpose | Loki tests Storybook projects for visual regressions by comparing screenshots with reference images. | Screenshotbot stores screenshots from existing screenshot tests and reports visual changes without requiring manual screenshot re-recording. |
| Support | The project provides documentation and a GitHub repository for its community and development. | The company offers community support, lists [email protected], and says customers can talk directly with founder Arnold. |
Plans
Screenshotbot
- Pay-as-You-Go$0.01 a month
- Unlimited$495 a month
- EnterprisePriced on request
- Self-hostedPriced on request
In their own words
Loki
Loki is a free, MIT-licensed tool for checking Storybook projects for visual regressions. It captures story screenshots and compares them with reference images, producing visual differences for review. The workflow is to create reference screenshots, run comparisons, review the differences, and approve updated references. Loki is designed for continuous integration, where tests can fail if reference images are missing. Capture targets include Chrome in Docker or locally, Chrome in AWS Lambda, the iOS simulator, and the Android emulator; an AWS Lambda renderer is available for large test suites. Node 16 or later is required. Recent Storybook versions need no extra integration for non-React Native projects, while React Native setup uses an import in `storybook/storybook.js`. Projects can configure Loki in a `package.json` section or supported Loki configuration files. Loki does not start Storybook or simulator and emulator servers, so they need to be running before tests. Documented animation limitations include looping requestAnimationFrame animations, GIFs, SVG animations, native Lottie animations, and React Native Animated.
Screenshotbot
Screenshotbot collects screenshots from existing screenshot tests and reports visual changes without requiring teams to re-record screenshots manually. It accepts outputs from Android, iOS, React Native, Flutter, Selenium, Cypress, PDFs, Kotlin Multiplatform, games, and other image-generating sources. Reports include image comparison tools, screenshot history, and a bisecting tool to help locate regressions. Masks let teams exclude selected image areas, such as timestamps or animations, from comparisons. Integrations update pull request or merge request checks and build statuses for GitHub, GitLab, Phabricator, Bitbucket, and Azure DevOps. It works with any CI framework and identifies context for services including GitHub Actions, GitLab CI, CircleCI, Bitrise, Netlify, and Azure DevOps. Slack notifications and task creation for Jira, Asana, Trello, Pivotal, and Todoist are also listed. Pay-as-You-Go costs $0.01 a month, billed per screenshot, and includes 10,000 free screenshots per month. Platforms include web, API, self-hosting, and desktop and mobile systems.