No code. No config. Just results.
Catch broken flows
before your users do.
Write smoke tests in plain English. AutoSmoke runs them in a real Chrome browser on every deploy and on a schedule — so your app stays reliable.
Free plan includes 20 runs/month. No credit card required.
Built for indie devs shipping daily.
Stop learning about regressions from angry users, refund emails, or a dip in conversions.
< 5 min
to first result
0
selectors to write
0
config files
The real problem
Shipping is easy now.
Not breaking things isn't.
AI tooling makes it trivial to push changes fast. It also makes it trivial to accidentally break:
Autosmoke runs your critical flows like a real user and alerts you the moment something breaks — ideally before a single customer hits it.
How it works
Three steps. That's it.
No SDKs, no test runners, no browser drivers. Just results.
Point Autosmoke at your site
Paste a URL — staging or production. No config files, no setup scripts.
Describe a flow in plain English
"Sign up with email → confirm dashboard loads → log out." That's your entire test.
Autosmoke runs it automatically
On every deploy (GitHub Actions / CI), on a schedule (every 5/15/60 min), or on demand with one click.
What you get back
A report you can actually use.
Not just pass/fail. Every run comes with a full timeline, annotated screenshots, session video, and a shareable link you can drop in Slack or a PR comment.
Fewer false alarms — Autosmoke focuses on smoke checks for critical paths, not brittle UI micromanagement.
SMOKE TEST REPORT
your-app.com/checkout
Timeline
Why it's different
Intent-based, not selector-based.
Selectors change, timing shifts, and your tests fail even when your app is fine. Then you spend your weekend “fixing tests,” not shipping. Autosmoke follows the flow like a user would.
1import { test, expect } from "@playwright/test";23test("user can add item to cart", async ({ page }) => {4await page.goto("https://store.example.com");5await page.locator(6'div.nav__wrapper > ul > li:nth-child(3) > a[data-testid="shop-link"]'7).click();8await page.waitForSelector(9".product-grid__container .product-card:first-child"10);11await page.locator(".product-card:first-child .btn--add-to-cart").click();12const cartBadge = page.locator("span.cart-icon__badge");13await expect(cartBadge).toHaveText("1");14});
1Navigate to the Shop page2Click 'Add to Cart' on the first product3Verify the cart badge shows 1 item
Less maintenance. More shipping.
Use cases
Perfect for
Indie SaaS products
Make sure your core flows survive every deploy.
Landing pages with forms
Catch broken contact or lead-gen forms before users bounce.
Stripe checkout flows
Verify checkout → payment → success page works end to end.
Auth flows
Login, signup, password reset — test them all automatically.
Onboarding sequences
Ensure new users can complete your setup flow.
Admin dashboards
Verify critical pages load and key actions work.
Common smoke flows:
Integrations
Runs where you already ship
GitHub Actions
Block or warn on broken flows before merge/deploy.
# .github/workflows/smoke.yml- name: Run smoke testsuses: autosmoke/action@v1with:url: ${{ vars.STAGING_URL }}api-key: ${{ secrets.AUTOSMOKE_KEY }}
Copy-paste YAML. Works in minutes.
DocsScheduled Monitoring
Get alerted if production breaks at 2am.
Every 5 / 15 / 60 min
Run on a schedule. No babysitting required.
Notify via:
EmailSlackWebhookSimple pricing
Start free. Scale when you're ready.
No hidden fees. Pick the plan that fits your workflow.
Free
See AutoSmoke work on a real project.
- 1 project
- 20 runs / month
- Email alerts on failure
Pro
For solo founders and small teams shipping actively.
- 5 projects
- 200 runs / month
- Scheduled runs
- GitHub Actions integration
- Full run recordings
Team
For teams with multiple products.
- Unlimited projects
- 1,500+ runs / month
- Team member access
- Priority support
Questions.
(We have answers.)