Talk to your users inside your app.
Banners, announcements, guided tours, checklists, surveys and an in-app inbox, targeted by who each user is and what they've done. Published in minutes, with no code changes.
Install once. Everything else happens in the dashboard.
Built for product, growth and support teams
- message formats, one editor
- 6
- snippet to install, ever
- 1
- deploys to publish a message
- 0
- environments: staging and production
- 2
Try it before you install anything
This is a sample app with Proly running inside it. Pick a format and use it the way your users would.
Reports
Last 30 days
Revenue
$48.2k
+12%
Active users
3,912
+8%
Churn
1.8%
−0.4
Every way to guide a user, in one place
One editor, one targeting engine and one SDK for every format. Each message lands only where it helps.
Guided tours
Anchor steps to real elements of your UI. Pick them visually with the Chrome extension, with no selectors to write.
Precise segments
Target by traits, account, events, page, device, frequency and goals. The server decides, so nothing irrelevant reaches the browser.
Banners
Light notices pinned to the top or bottom of your app for maintenance, promos and updates.
Announcements
Centered or slide-in windows with rich text, images, video and buttons for news that deserves attention.
Notification center
A bell and an inbox inside your app, with per-user read state, categories and a toast when something new lands. Or go headless and draw your own with the API.
Checklists
Onboarding lists that tick themselves off as users complete real actions in your product.
Surveys
NPS, ratings and open questions at the right moment, with responses broken down by segment.
Translated with AI
Write once, translate into any language in one click and review before publishing. Each user sees their own.
Your brand
Themes that match your product, with light and dark mode picked up automatically.
Live in three steps
Engineering spends an afternoon once. Product ships every message after that.
- 1
Add the snippet
Drop the SDK into your app and identify your users. It renders in a Shadow DOM, so it never clashes with your styles.
- 2
Build your message
Write it, style it, choose the audience and the schedule. Preview it as any real user before it goes out.
- 3
Publish and learn
Ship to staging, then production. Watch reach and responses, and iterate without a release.
Your engineers install it once
A small SDK, a typed API and sensible defaults. After the first deploy, product never has to file a ticket for a message again.
- Shadow DOM rendering, SPA route awareness and lazy-loaded widgets
- Staging and production environments with separate keys
- Identity verification to keep user data trustworthy
- Team roles and a public REST API with scoped keys
- A headless notifications API when you want to draw the inbox yourself
// Load once, anywhere in your appproly.init({ key: "pk_live_8f2c…" });// Tell Proly who is signed inproly.identify(user.id, { name: user.name, plan: user.plan,}, { hash: user.prolyHash });// Events power targeting and checklistsproly.track("report_created");Questions, answered
Anything else? Sign in and look around; setup takes minutes.
Do I need an engineer for every message?
No. An engineer adds the snippet once. From then on, banners, announcements, tours, checklists, surveys and notifications are created, targeted and published from the dashboard.
Do users get an inbox?
Yes. The notification center adds a bell and an inbox to your app. Each user keeps their own read and unread state, notifications are grouped by category, targeted by segment, translated and themed like everything else, and new ones arrive with a toast. Prefer your own UI? Use the headless API and render it however you like.
Will it slow down or break my app?
Widgets load lazily and render inside a Shadow DOM, so your styles and Proly's never touch. Nothing is downloaded for messages a user isn't eligible to see.
Which frameworks does it work with?
Any web app: React, Vue, Angular, Svelte or plain HTML. The SDK follows client-side route changes, so single-page apps work out of the box.
How do I build a guided tour?
Open your app with the Chrome extension and click the elements you want to highlight. Proly stores robust selectors for you, so there's nothing to write by hand.
How does targeting stay accurate and private?
Targeting is evaluated on the server from the traits and events you send. Identity verification signs each user, so nobody can pose as someone else to see their messages.
Can messages match my brand and language?
Yes. Themes follow your colors and switch between light and dark automatically. AI translation drafts every language for you to review before publishing.
Ship your first message today
Create your workspace, add the snippet and have something live in your app before lunch.