The AI support agent
that takes action
It answers from your docs, takes real actions for the verified user asking, and hands the chat to you when it should. Plus co-browsing, session recordings, heatmaps, A/B tests, announcements and feature requests — in one lightweight widget.
Let me get a teammate to help...
AcmeDo you have these in white?
AcmeCan't find the export button
AcmeWhere is my order #4521?
AcmeOne script tag puts live chat, an AI agent, co-browsing, session recordings, heatmaps, A/B tests, announcements, onboarding checklists, product tours, feature requests and a help center inside your app.
AI Agent
Answers, actions,
and knowing when to stop
An AI agent born inside your chat. It answers from your knowledge base, does real work on your systems for the verified user asking, and hands the conversation to your team the moment a person should take over.
GET /invoices → 200{ "id": "INV-2041", "amount": 49.00, "status": "paid" }AI Agent That Answers
Grounded in your knowledge base, reviewed before it ships, and every answer cites its sources.
AI Actions On Your Systems
Invoices, order status, subscription details — fetched live from your API for the verified user asking, with cryptographically signed identity.
Human Handoff Done Right
The agent asks one triage question, writes a briefing for your team, and goes silent the instant you type — inbox or mobile app.
Real-Time & Streaming
Answers stream in as they're written, with a live status — “Checking your account…” — while the agent works.
Reads Screenshots
Users paste a screenshot; the agent reads what's on it and answers about the exact screen they're stuck on.
Every Language
Detects the language of each message and answers in it — even when your docs are written in another.
Support
Answer every user,
wherever they are stuck
Live chat for the moments a person should step in, co-browsing to see the problem for yourself, and help articles users find on their own.
Talk to your users
in real time
Built-in live chat right inside the widget. No third-party tool needed — support your users where they already are.
Real-Time Messaging
WebSocket-powered live chat. Messages appear instantly for both sides.
Image & Screenshot Sharing
Users can paste screenshots or upload images directly in the chat.
User Context
See who you're chatting with — name, email, browser, OS, and custom properties.
Unread Notifications
Badge count on the widget so users never miss a reply from your team.
Emoji Picker
Built-in searchable emoji picker for expressive conversations.
Multi-Language
Chat UI fully translated — auto-detects user's language.
See what your users see,
in real time
One click to request a co-browsing session. Watch the user's screen live, see their cursor, and guide them to the answer — no screen-share links or third-party tools.
One-Click Session
Start a co-browsing session right from the chat. The user accepts and you're in — no links or downloads.
Live Screen View
See exactly what the user sees in real time — their page, scroll position, and DOM state streamed to your dashboard.
Cursor Tracking
Follow the user's cursor as it moves. Instantly understand where they're clicking and what they're looking at.
Audio Cues
Soft ringing while waiting, a bling when the user joins, and a disconnect tone when the session ends.
Consent-First
The user must explicitly accept before any screen data is shared. Full control, full privacy.
Resizable & Draggable
The co-browse window floats above your dashboard. Drag, resize, and keep chatting side by side.
Help users help
themselves
Import your existing help center or blog and surface articles directly inside the widget. Users find answers instantly — no tab-switching required.
Auto-Import from Any URL
Paste your help center or blog URL. We crawl sitemaps and pages to import articles automatically.
Instant Search
Users search articles by title or description right inside the widget. Results load as they type.
Multi-Language Support
Import sources per language. The widget auto-detects the user's locale and shows matching articles.
Re-Crawl Anytime
Content changed? Hit re-crawl to refresh articles. Old entries are replaced with fresh data.
In-Widget Experience
Articles open in a new tab. No iframe, no popup — clean and native-feeling for your users.
Multiple Sources
Add your blog, help center, and docs as separate sources — all merged into one searchable view.
Understand
See what users do,
then prove what works
Replay real sessions, map every click and scroll, and test changes against each other — all from the same script tag.
Stop guessing why
users got stuck
Replay real sessions to see exactly what happened — every click, scroll and rage-click. UserSignal flags the frustrating ones for you, so you watch the sessions that matter instead of scrubbing through hundreds.
Pixel-Perfect Replay
Not video — the real DOM, rebuilt. Crisp at any size, a fraction of the bandwidth, and it captures every page of the visit as one session.
Frustration, Flagged
Rage clicks, dead clicks, quick-backs and JavaScript errors are detected automatically and marked on the timeline. Click a marker to jump straight to the moment.
Private By Default
Off until you turn it on, and everything your visitors type is masked in the browser before it is ever sent. Hide anything else with a CSS selector.
Wired Into Support
Every recording is attached to the person, so a chat conversation links straight to what they were doing. Something standalone replay tools can't do.
Find The Right Session
Filter by frustration signal, device, duration, page or user segment. Save the combinations you use often and watched sessions grey out as you go.
You Choose How Long
Keep recordings for 7 days or a year, set per project. They are deleted for real when the window closes — and when a visitor is deleted, so is their history.
See where users click,
move, and stop scrolling
Click, move, and scroll-depth maps for every page — collected automatically from the moment the widget is installed. Open any page and the map is already waiting, drawn over the real page.
a.cta-primary312#pricing-toggle198nav a.docs87Click, Move & Scroll Maps
Where users click, where the cursor lingers, and how far down they actually get — per page, per device.
Zero Setup
No snapshots to create, no pages to register. Collection starts with the widget — the map is there when you look.
Drawn On The Real Page
The background is your actual page rebuilt from its DOM — not a stale screenshot — so heat lands on real buttons.
Top Clicked Elements
A ranked list of what gets clicked most — anchored to elements, so it survives responsive layouts.
Split By Device
Desktop, tablet, and mobile maps are kept apart — because a layout that converts on one can bury the button on another.
Anonymous By Design
Only coordinates and scrubbed element names are collected — no content, no keystrokes, no identity attached.
Test two versions,
ship the one that converts
Split traffic between page variants, define what counts as a conversion, and let the numbers decide. Works with two different URLs, a ?v= parameter, or a few lines of code — no extra tools.
new-pricing · goal: signup_completedSplit-URL Tests
Point variants at different pages — or the same page with a ?v= parameter. Visitors are redirected automatically, UTMs intact.
Code & CSS Variants
Branch with one JS call or a data attribute on the <html> tag — pure-CSS tests need no JavaScript at all.
No-Code Goals
A conversion is a tracked event or a page visit — define one with a CSS click tracker, zero code changes.
Real Significance
Conversion rate, uplift, and statistical confidence per variant — flagged when a result actually means something.
Sticky Assignments
Every visitor keeps their variant across visits — even anonymous ones, even if you tweak the traffic split mid-test.
Pick a Winner
Pause, resume, or complete a test and crown the winning variant — the full history stays on the results page.
Engage
Tell users what is new,
build what they ask for
Announcements they actually see, checklists that walk new users to their first win, tours that show them around, emails that go out when they sign up or go quiet, a board where they suggest and vote on ideas, and a public roadmap that shows it is happening.
Keep users informed with
in-app announcements
Changelogs, product updates, and targeted messages your users will actually see, right where they work.
5 Display Formats
Sidebar panel, popup modal, top banner, corner snippet, or tooltip.
User Segmentation
Target specific user groups — free vs. paid, new vs. returning.
Multi-Language
Fully translated widget with auto language detection.
Emoji Reactions
Get instant sentiment feedback on every post you ship.
Scheduling & Drafts
Schedule for the future, save as draft, publish when ready.
Analytics
Track views, clicks, reactions, and engagement per user.
Get new users to
their first win, faster
Onboarding checklists live in the widget and tick themselves off as users do the work — so every new user knows the next step, and you can see where they stall.
Steps That Tick Themselves
A step completes when the user clicks the right element, when something appears on the page, or when your app tracks an event.
Go Takes Them There
Each step can carry a button that opens the right page and clicks the right thing, so nobody hunts for where to start.
Progress In Plain Sight
A progress bar at the top of the widget shows how far each user has come and how little is left.
Saved Per User
Progress belongs to the person, not the browser — it is still there when they come back tomorrow.
In Their Language
Checklists are shown in each user's language, like the rest of the widget.
See Where They Stall
Every completed step is recorded as an event, so you can tell which step new users get stuck on.
Show new users around,
right inside your app
Product tours that point at the real buttons and menus in your app. You build them by clicking on your own pages: no code, no browser extension.
Included in the Pro plan.
Built On Your Own Page
Open your app with the builder on top, click the element a step should point at, and write the step right next to it.
Tooltips And Pop-ups
Point at a button, a menu or a field, or open a pop-up in the middle of the page. Any step can carry an image, a GIF or a video.
From Page To Page
Next can take users to another page and carry on there, hand over to another tour, or open a drawer through your app's own code.
Who Sees It, How Often
Show a tour to a segment, on the pages you choose: once, a set number of times, or every time.
In Their Language
Write a tour once and translate it in UserSignal. Each user sees it in their language.
Never Stuck On A Missing Button
If a step's element isn't on the page, the step is skipped and the editor tells you which one to fix.
Email the users
you already know
Campaigns and automated emails for the people who use your product, built on the contacts, events and segments UserSignal already has. No list to export, no second tool to keep in sync.
Included in the Business plan, with 50,000 emails a month.
Automations That Start Themselves
A flow begins when someone signs up, gets a tag, enters a segment or reaches a date. It waits, splits on who opened or clicked, and stops when they reach the goal.
Campaigns To The Right People
Send to everyone or to the segments you pick, now or at a set time. Then see exactly who opened, clicked, bounced or unsubscribed.
Templates Built With Blocks
Drag blocks into place, check desktop and mobile, and personalize with anything your app knows about the user.
One Email, Every Language
Write each email in every language of your project. Each person gets it in their own.
Sent From Your Domain
Emails are signed as you, from your own subdomain, so the sending reputation is yours alone. Or send through your own SMTP server.
Sending Health
Bounce and spam-complaint rates in plain sight. Sending pauses before a bad list can hurt your domain, and nobody who unsubscribed is emailed again.
Let users shape your product
with feedback & voting
Collect ideas, let users vote and comment, and close the loop when you ship. All built into the same widget your users already know.
Idea Submissions
Users submit feature requests directly from the widget with categories and images.
Upvoting
Users vote on ideas they care about. See what matters most at a glance.
Comments & Discussion
Users and your team can discuss ideas. Internal notes for private conversations.
Public Roadmap
Show what's planned, in progress, and completed. Build trust with transparency.
Screenshot Uploads
Paste screenshots or attach images directly from your clipboard.
Merge Duplicates
Combine similar requests and consolidate votes automatically.
Show what is coming,
and what just shipped
A public roadmap right inside the widget shows what is planned, what is in progress and what is done — so users can see their ideas moving instead of asking whether they ever will.
Right Inside The Widget
Users open the roadmap from the same widget as their requests — no separate site to find or bookmark.
Planned, In Progress, Completed
Every idea sits in the stage it has reached, with the votes that put it there.
Close The Loop
When you ship, the request moves to Completed, so the people who asked for it see that it happened.
“UserSignal gave us everything we needed in one widget — announcements, feature requests, live chat, and a knowledge base. We set it up in minutes and our users love it.”
Bruno FelicioFounder, TrainerPlan
Up and running
in 2 minutes
No complex setup, no build steps, no dependencies.
-
1
Add one script tag
Paste a single line of code before your closing </body> tag.
HTML<script src="https://app.usersignal.co/widget.js" data-key="YOUR_API_KEY" data-user-id="USER_ID" data-user-name="USER_NAME" data-user-email="USER_EMAIL"> </script> -
2
Create & collect
Publish announcements from the dashboard. Users submit feature requests from the widget.
New announcementDraftDark mode is here We've added a beautiful dark theme you can toggle in Settings.PublishSchedule1Slack notificationsNew request from the widget -
3
Engage & ship
Track engagement, prioritize by votes, update your roadmap. Close the loop when features ship.
24Dark mode supportFeature requestPlannedCompleted1,248Views312Reactions186Clicks
Simple, transparent pricing
Start free. One flat price for your whole team: no per-seat fees, and AI replies are included.
- 1 project
- Unlimited announcements
- Feature requests & voting
- Public roadmap
- Live chat
- Co-browsing
- Up to 1,000 active users
- Community support
- "Powered by UserSignal" branding
- Up to 3 projects
- Unlimited announcements
- Feature requests & voting
- Public roadmap
- Live chat
- Co-browsing
- Up to 10,000 tracked users
- Priority support
- Remove branding
- Custom categories
- Image uploads
- Advanced analytics
- Product tours
Everything in Pro, plus:
- Unlimited projects
- Unlimited tracked users
- Session recording & replay
- A/B experiments
- Heatmaps
- Onboarding checklists
- Email campaigns & automations
- 50,000 emails a month
Things people
ask us
How do I install UserSignal?
Paste one script tag before your closing </body> tag. The widget loads on its own, and everything else is set up from the dashboard.
Is the free plan really free?
Yes, forever. It covers one project and up to 1,000 active users, with announcements, feature requests, the public roadmap, live chat and co-browsing.
What can the AI agent actually do?
It answers from your knowledge base and cites its sources, fetches details like invoices and order status from your API for the verified user asking, and hands the conversation to your team the moment it should.
Do session recordings capture what my users type?
No. Recording stays off until you turn it on, and everything visitors type is masked in the browser before it is ever sent. You can hide anything else with a CSS selector.
Which plan has session recording, heatmaps, A/B tests, checklists and email?
Business, at $79 a month. It includes everything in Pro, plus unlimited projects and tracked users.
Can I show new users around my app?
Yes, on Pro. Product tours point at the real buttons and menus in your app, as tooltips or pop-ups with an image, a GIF or a video. You build them by clicking on your own pages, with no code and no browser extension, and choose who sees them and how often.
Can I send email to my users with UserSignal?
Yes, on the Business plan. Campaigns and automated emails go to the users you already have in UserSignal, from your own domain: 50,000 emails a month, up to 20,000 people per campaign. A new sending domain starts small and grows each day, which keeps your emails in the inbox.
Which languages does the widget speak?
The widget is fully translated and detects each user's language. The AI agent replies in the language of each message, even when your docs are written in another.
Can I remove the UserSignal branding?
Yes. The Pro and Business plans remove the “Powered by UserSignal” line from the widget.