Free to run. Pay for history, export and forwarding.

The runtime and its on-device model are free and open source, in every mode, with no usage meters. Pro keeps 1 year of dashboard history, lets you download every event as JSONL or CSV, and forwards detections to Sentry, PostHog, Datadog, Slack or a signed webhook. Custom adds a model trained on your app.

01

Free

$0no card needed

The open-source runtime and a dashboard for a few apps.

Install

No account needed to run it. The dashboard needs a free account.

  • The open-source runtime with every mode: observe, guard and heal
  • Reports in the browser console
  • The genclass.dev page check
  • Dashboard for up to 3 apps
  • 7 days of dashboard history

02

Pro

$99per month

Every event your apps send, kept for a year, and sent where you already look.

Opens with runtime 0.3.0

On sale when runtime 0.3.0, the first version that sends to the dashboard, is on npm.

  • Everything in Free
  • Unlimited apps
  • 1 year of dashboard history
  • Full data export: every event GenClass received for your apps, as JSONL or CSV, by download or API
  • Forward detections to Sentry, PostHog, Datadog, Slack or a signed webhook
  • Interaction analytics (coming next)
  • Email support from mehar@daybot.ca

03

Custom

$599per month

Pro, plus a GenClass model trained on your own app.

Opens with runtime 0.3.0

On sale when runtime 0.3.0, the first version that sends to the dashboard, is on npm.

  • Everything in Pro
  • A classifier trained for your app: we train a GenClass model on your app's own traffic and bug reports and ship it as a private model your runtime loads
  • A person from GenClass emails you within 1 business day of purchase to start
  • Priority support

Need self-hosting, SSO or invoices? Email mehar@daybot.ca.

Prices in US dollars, billed monthly. Both paid plans need a genclass.dev account (passkey, Google or GitHub); checkout is on Stripe. The dashboard, and with it export and forwarding, fills from pages that run runtime 0.3.0 or later with diagnostics on.

Plain terms

What stays free, and how paying works.

The runtime is free and open source, forever.

Apache-2.0, with observe, guard and heal, in any app, commercial or not. It needs no account, key or plan to run.

No usage meters.

One flat price a month. We never bill by sessions, events, decisions or traffic.

Cancel any time.

On your account's billing page. The plan runs to the end of the month you paid for, then the account moves to Free.

Billing FAQ

Questions about plans and billing

What counts as an app?

One app token. A token groups the diagnostics of one web app on every hostname and route it runs on, so production and staging can share a token or have one each. Free covers 3 apps. Pro and Custom set no app limit; to stop abuse an account holds at most 200, and we raise that if you write to us.

What does the data export include?

Every event GenClass received for your apps, as it arrived: page sessions with versions, mode, device class, hostname and route (ids replaced), model loads, each decision with its diagnosis, confidence and action, detections, actions, undos and the periodic counts, plus when each batch arrived and a two-letter country. It covers events that arrived while the app was in your genclass.dev account, starting from the day paid plans opened, and reaches back 1 year (at most 90 days for the time before you upgraded). Download it from an app's dashboard as JSONL or CSV, or fetch it with GET /api/account/projects/<id>/events?from=&to= and a bearer token. It holds no page text: GenClass does not collect page text unless your app opts in to situation text, and then only the redacted text the model read. Typed passwords and payment fields, cookies, headers, request and response bodies, IP addresses and user agents are never collected, so they are never in an export.

What happens to my history if I downgrade?

When a paid plan ends, the account moves to Free: dashboards show the last 7 days, and forwarding and export stop. GenClass keeps every app's data for at least 90 days on any plan, so upgrading again brings those days back into view. Data older than 90 days is deleted 30 days after the paid period ends, so export what you want to keep before the plan ends, or upgrade again within those 30 days. Your apps, tokens and dashboard links keep working.

How does forwarding work?

It is off until you turn it on for an app on its dashboard, on Pro or Custom. Then the genclass.dev collector sends that app's likely detections (not the ones marked possible) to the destinations you connect: Sentry, PostHog, Datadog, Slack, or a webhook whose requests are signed so you can check they came from GenClass. Each record has the diagnosis, confidence, page route, versions and a link to the dashboard, never page text. The same problem on the same page is sent at most once an hour, and an app sends at most 60 records an hour. Nothing is added to your app's code or bundle, data goes only to the tools you connect, and turning forwarding off, or the plan ending, stops it.

What is interaction analytics?

Reports on how people use your app's pages: clicks, dead clicks and rage clicks, how far they scroll, and the paths they take from page to page. It is being built now and is not in the runtime yet. Pro and Custom include it when it ships.

What does the custom classifier involve?

After you start Custom, a person from GenClass emails you within 1 business day. Together we pick the bugs that matter in your app, the data to train on (your app's events in GenClass and the bug reports you share with us) and when the model ships. We train a GenClass model on that data, measure its false reports on your app's normal traffic, and ship it as private model files your runtime loads with model.baseUrl.

How do receipts and invoices work?

Payments go through Stripe, which emails a receipt for each one; past receipts are under Manage billing on your account's billing page. Card details go to Stripe and never reach GenClass. For an invoice with your company's details, or a purchase order, email mehar@daybot.ca.

Can I get a refund?

Refunds are by request: email mehar@daybot.ca from the address on your billing account. Cancelling stops the next charge, and the plan stays until the end of the month you paid for.

Is there a yearly price?

Not yet; both paid plans are monthly. If your company needs to pay for a year at once, email mehar@daybot.ca.