Skip to content

The assistant says: “Hi — ask me anything about this page.”

AI voice onboarding for SaaS

Guide users with voice.
Show them with light.

OnboardingVoice is an AI assistant that lives inside your web app — it answers out loud, and points at the exact button, in real time. Add a lightweight widget. Connect your docs. Help users find their next step.

  • One script tag ~58KB core, gzipped
  • Speaks and points in real time
  • Grounded answers from your docs

Chatbots tell your users where to click.

OnboardingVoice points.

Support articles describe. Tooltips interrupt. Your users are already in the product — they don’t need directions read back to them. They need someone to walk over and show them.

A product walkthrough

Ask out loud. Watch it point.

An illustrated preview of the experience. The assistant speaks its answer while a spotlight finds the relevant element — then walks the user through, step by step.

app.ledgerline.com/dashboard
Search invoices…

Outstanding

$12,450

Paid this month

$8,920

Drafts

4

Recent invoices

Invoice Client Amount Status
#0043 Nova Labs $1,150.00 Paid
#0042 Brightpath $960.00 Sent
#0041 Corley & Co $2,300.00 Overdue
#0040 Fielder Studio $780.00 Paid

New invoice

Draft

Client

Choose a client…
Acme Studio Nova Labs Brightpath

Amount

$

Due

Net 30

User asks: “How do I send my first invoice?”

Happy to. See the glowing button, top right? That’s New Invoice — I’ll walk you through it.

Source: Ledgerline Docs ↗

Every highlight, click and keystroke above is the widget’s actual guidance engine — eight visual action types, chained into tours.

Try the live demo →

Four sample products. Ask a question, then follow the guidance on screen.

From zero to guided

Three steps. One script tag.

  1. 01

    Map your app.

    Point the no-code Studio at your product. It learns your screens automatically — URLs, page structure, even single-page apps — and lets you mark the elements that matter.

    Billing · screen detected /settings/billing
    Upgrade plan
    #upgrade-plan-btn · 3 fallbacks
  2. 02

    Teach it your product.

    Upload your docs, help center, or guides. Answers come grounded in your own content — with citations — never generic model guesses.

    Help center Product guides API docs

    “Where do I change the billing owner?”

    Under Settings → Billing → Owner. Only admins can change this.

    Source: Help center ↗
  3. 03

    Add one script tag.

    Paste a single tag — three config fields, ~58KB gzipped for the core. The mic appears in your product. No rebuild, no code changes.

    <script src="https://cdn.onboardingvoice.com/widget.js"
      data-tenant="your-app"
      data-key="pk_live_…"
      data-position="bottom-right">
    </script>
    …and the mic is live in your product.

Under the hood

Engineered for apps that change.

Real products ship weekly, run as single-page apps, and hide half their UI in shadow DOM. The guidance engine is built for exactly that.

Your UI ships weekly. Guidance shouldn’t break.

Every element is stored with fallback selectors and a structural signature. If a selector fails, the widget re-scores candidates — piercing shadow DOM when needed — and still finds the right target.

#checkout-btn signature match 0.94 Checkout

Speech that fits the moment.

Real-time speech-to-speech over WebRTC for natural conversation. Browser speech for instant, on-device response. Server speech for consistency at scale.

  • WebRTC Realtime speech-to-speech
  • Browser on-device, instant
  • Server consistent at scale

Knows the screen.

Detects where the user is — URL patterns and DOM sentinels, single-page-app aware — so guidance always fits the current view.

history.pushState → screen:changed

Eight ways to point.

Chained into full guided sequences — tours that click, type, and scroll for the user.

  • Highlight
  • Tooltip
  • Scroll
  • Navigate
  • Click
  • Input
  • Focus
  • Sequence

Grounded answers.

Retrieval over your own docs, with citations users can open. If it isn’t in your content, it says so — no invented answers.

Source: your docs ↗

~58KB core, gzipped

3 required config fields

Database-per-tenant isolation

Built-in guidance analytics

Design partner program

Your product. Our next pilot.

We instrument your app ourselves — you pay one flat pilot fee and get a rigorous, holdout-controlled measurement of what changes. Your data stays isolated the whole time: an architecture guarantee, not a policy promise.

  • Database-per-tenant isolation — no shared tables, ever
  • Answers restricted to your own documents, with citations
  • One script tag — no access to your codebase
Tenant A isolated db Tenant B isolated db Tenant C isolated db

Three tenants. Three databases. Zero lines between them — by architecture, not by policy.

Early access

We’re onboarding our founding cohort.

We work hands-on with a small group of products before general availability. Founding partners get concierge setup and pricing that never expires.

  • Concierge onboarding

    we map your app with you, screen by screen

  • A direct line to the founding team

    your feedback shapes the roadmap

  • Founding pricing, locked for life

    it never expires, whatever we charge later

No credit card. We reply to every request personally.

Asked, answered

Before you ask out loud.

How long does installation actually take?

One script tag with three config fields. There's nothing to rebuild and no changes to your app's code.

Will it break when we redesign our UI?

Every element is stored with fallback selectors and a structural signature. When a selector stops matching, the widget re-scores candidates — piercing shadow DOM when needed — and still finds the right target. If nothing scores high enough, it degrades to a spoken answer instead of highlighting the wrong thing.

Where do the answers come from?

From your documentation only. You upload docs, help-center articles, or guides in the Studio; answers are retrieved from that content and returned with citations users can open. When your content doesn't cover a question, the assistant says so instead of guessing.

Does it work with our single-page app and framework?

Yes. The widget is a framework-agnostic web component. Screen detection is SPA-aware — it watches route changes, URL patterns, and DOM sentinels — with router adapters for React Router, Vue Router, and Next.js, plus shadow-DOM piercing for component libraries.

What happens to our data?

Each customer runs on a physically separate database — your content, transcripts, and analytics never share a table with anyone else's. API keys are stored hashed, and the widget ships no secrets to the browser.

Do users have to speak out loud?

No. Voice is optional — the widget also takes typed questions in the same panel, and the visual guidance works identically either way. Three speech modes (real-time WebRTC, browser speech, server speech) are there when voice fits the moment.

Contact

Let’s talk onboarding.

Tell us about your product and where new users get stuck. We’ll show you what a voice that points can do about it.

Response time
Under 24 hours, on business days
Best for
Custom pricing, enterprise, partnerships
Also available
Live demo, technical deep-dive

Prefer email? [email protected]

The assistant says: “Still reading? Let me show you instead.”

Give your product a voice that points.

Join the waitlist — early partners onboard first.