A proactive message rule is only as good as the reason it fires, and the reason is almost never “a visitor is on the site.” It is a visitor on a specific page, doing something a page like that usually means — comparing prices, stuck at a form, reading documentation for a feature that is more complicated than expected. The rule that works is built from that specific reason, not from a template copied across every page the same way.
Pricing, checkout, and onboarding: three different moments
On a pricing page, time is the tell. A visitor who lands and leaves in ten seconds was probably checking a number they already suspected; one who is still there after twenty or thirty seconds is comparing plans, trying to work out what a tier includes, or looking for a detail the page does not spell out clearly enough. The message that earns a reply names that moment directly — “Comparing plans?” outperforms a generic greeting because it tells the visitor the message understood what they are actually doing, and a short delay of around fifteen to twenty seconds keeps it from firing on someone who was never going to stay.
Checkout and billing pages carry the highest cost of hesitation, because a visitor who abandons here was seconds from a decision that is now lost rather than merely deferred. The trigger that matters most is a shorter delay than elsewhere — visitors do not linger on a payment form out of curiosity — combined with an audience of leads or logged-in users rather than anonymous visitors, since a person this deep into a flow has usually already identified themselves. The message should address the concrete thing that stalls a checkout: a coupon field, a currency question, uncertainty about what happens after the click, not a general offer of help.
Onboarding is where a proactive message replaces a follow-up email that would otherwise arrive a day too late. A new user stuck on the same setup step for longer than a typical session suggests something in the flow, not the product, is the actual obstacle — a required field with an unclear label, a step that assumes information the user doesn't have yet. Targeting by page path here should be specific to the step itself rather than the whole onboarding section, because the message that helps someone stuck on connecting a domain is not the message that helps someone stuck on inviting a teammate.
Docs pages and renewal moments need a different trigger
A documentation page is a strange one to put a chat trigger on, because a visitor reading docs is, by definition, trying to solve the problem without contacting anyone. The trigger worth setting here fires on time, not on arrival — a couple of minutes on a single article, or several articles in one session, both suggest the docs did not actually answer the question. The message should acknowledge that directly: not “how can we help,” which restates what the whole page already offered, but something closer to naming the fact that this has taken a while and offering the shortcut of just asking.
A trial-ending or renewal-adjacent page is really a re-engagement trigger wearing a page-path rule. The audience should be narrowed to existing users specifically, since the message means something different — closer to account management than to a first greeting — and the content should reference the account's actual situation rather than a generic reminder, which is where a personalisation variable for the account or plan name earns its place over a static line.
What the five recipes share, and how to avoid overlap
Every one of these recipes follows the same shape: a page that implies a specific kind of hesitation, a delay tuned to how long that hesitation usually lasts before it resolves itself, and an audience narrow enough that the message reaches people actually in that situation rather than everyone who happens to load the page. None of the five would work copied onto a different page unchanged, because the reason for the hesitation — and therefore the sentence that addresses it — is different every time.
Running several of these at once raises one problem worth planning for upfront: overlap. A logged-in user near the end of a trial who also lands on the pricing page qualifies for two different rules built for two different moments, and receiving both in the same session reads as noise rather than attentiveness. Order rules by specificity and let the narrower one win — the trial-ending message, built around that user's actual account state, should take priority over the general pricing-page greeting they would otherwise also qualify for.
Measure and prioritise each recipe on its own
Each recipe earns its place by its own numbers, not the programme's combined total. A pricing-page message with a strong reply rate and a checkout message with a weak one are not evidence that proactive messaging works; they are two separate results that call for two separate decisions — keep the first as written, and reconsider the delay or the copy on the second before assuming the page was the wrong place to try it.
None of these five is a template to install and forget. Each is a specific bet about why a visitor is on that page and hesitating, stated plainly enough in the trigger and the copy that it is either right — and the reply rate shows it — or wrong in a way that is easy to see and adjust.
Start with the two highest-intent pages, not all five at once
Pick pricing and checkout first, because hesitation there is both easy to define — time on page, cart or billing state — and expensive to ignore, since both pages sit right before a decision rather than early in a browsing session. Write one message for each, narrow the audience to the group actually in that situation, and leave every other page rule for later.
Give each recipe two to three weeks before judging it, and judge it on reply quality rather than reach alone. A message with a modest reply rate but conversations that clearly needed the nudge is working; a message reaching plenty of people with replies that read as confused about why they were contacted needs a rewrite of the headline, not a wider audience.
Only add the docs, onboarding, and renewal recipes once the first two are tuned and the team has a feel for how much volume a proactive rule actually generates. Five rules launched together are five variables changing at once — if the reply rate on any of them looks off, there is no way to tell which page, delay, or line of copy was the reason.
Frequently asked question
Should every page on the site have its own proactive message?
No. A rule is only worth setting where a page implies a specific, guessable reason for hesitation — pricing, checkout, a stalled onboarding step, a documentation page read for unusually long. Pages that don't imply anything in particular about why a visitor is there are better left without a trigger; a message with no clear reason to exist reads as noise regardless of how well it is written.