vs
Compare / Happo
$13,308a year less than Happo.
For 300 stories at 3 viewports and 400 builds a month, 360,000 screenshots.
Happo renders every snapshot in every browser on its own workers and bills each one. stateofpixel reviews the screenshots your CI already takes and bills only for the storage they use.
Facts about Happo checked on 27 September 2026, with 7 sources.
A month of visual tests
300 stories, 3 viewports, 400 builds, 360,000 screenshots
- stateofpixelFree, 5.5 GB stored$0
HappoPro $749 + 60,000 extra at $6 per 1,000$1,109
One build, step by step.
300 stories at 3 viewports, run through Happo and through stateofpixel.- 1
Your CI builds and uploads the suiteYour tests take screenshots900 screenshots - 2
Happo's workers render every snapshotThe CLI hashes and compares them on the runner900 hashes - 3
Happo compares with the baseline reportOnly images we have not seen upload45 changed - 4
You review on Happo and it sets the statusThe review page and the GitHub check
What changes when you switch.
The same pull request, reviewed with less in the way.What your reviewers get.
Each changed screenshot next to its baseline, with the changed pixels in green.- Four views. Side by side, diff, slider and flip.
- Keyboard first. j and k to move, a to approve, r to reject.
- One check. Green when every change is approved.

Price it for your suite.
Move the sliders. Every tool here bills for this many screenshots a month, except stateofpixel.Screenshots a month360,000
$13,308 a year less than Happo.
Screenshots are stories x viewports x browsers x builds. For stateofpixel, 5% of screenshots change per build at 80 KB each, and pull request images are kept 60 days. The cheapest list plan for each tool, before tax, from Happo pricing on 27 September 2026. Happo counts each browser as its own snapshot.
stateofpixel and Happo, row by row.
Every row about Happo links to the page it came from.Where Happo is ahead.
We skip some features on purpose. If you need one of these, choose Happo.Switch in one pull request.
Keep your tests. Change the step that sends screenshots to Happo. The moving guide has the details.- 1Install the GitHub AppPick the repositories. On GitHub Actions there is no token to copy.
- 2Replace the Happo stepStorybook stories are captured at each width you list. For Cypress or Playwright, upload the screenshots your tests write.
- 3Merge to mainThat build becomes the baseline. There is nothing to export from Happo.
Before
steps:
- run: npm ci
- run: npx happo
env:
HAPPO_API_KEY: ${{ secrets.HAPPO_API_KEY }}
HAPPO_API_SECRET: ${{ secrets.HAPPO_API_SECRET }}After
permissions:
contents: read
id-token: write
steps:
- run: npm ci
- run: npx storybook build
- run: npx stateofpixel storybook storybook-static --viewports 375,1280Questions.
What to know before you move from Happo.Can I keep my Storybook stories as they are?
Yes. stateofpixel storybook opens your built Storybook and captures every story at each width. A story named Button/Primary becomes the snapshot Button/Primary [chromium 1280].
Why is stateofpixel cheaper than Happo?
Happo renders every snapshot in every browser on its own machines. stateofpixel never runs a browser: your CI renders and compares, and our server stores the images that changed.
Do I lose my Happo baselines?
You start fresh. The first build on your default branch becomes the baseline, and pull requests compare against it from then on.
Sources
Read on 27 September 2026. Prices are list prices before tax. The stateofpixel column comes from our docs.