Platform · Voice of customer

Ask inside the experiment

On-site NPS, CSAT and CES surveys with a guided builder, and they can run within a variant, so qualitative feedback arrives alongside the numbers.

Asking

The question, the moment, and the answer

Building a survey in minutes, firing it when it is worth asking, and reading the reply beside the number it explains.

  • One trigger per survey, from page view, delay, exit intent, scroll depth or your own event
  • Frequency capping, with one survey per session across everything you are running
  • AI sentiment on every written answer, so a few hundred replies stay readable
  • Answers attributed to the variant the visitor saw
  • A separate bundle, requested only by sites that have a survey to show
NPSCSATCES
A running NPS survey inside a variant: a score of plus forty-two from 1,284 answers at an 8.4% response rate, the distribution of scores from nought to ten, and the split of written answers into positive, neutral and negative.

The builder

A survey in a few minutes, not a project

Four steps: pick the instrument, edit the question and its follow-up, match the widget to your site, choose when it fires. NPS, CSAT and CES arrive with their scales and their standard wording already right.

  • NPS, CSAT and CES templates with the correct scale and the standard phrasing
  • Score, open text and single choice, up to five questions
  • A live preview of the widget as you build it
  • An internal name for the library, which visitors never see
A survey being built: NPS chosen from the three instruments, the standard recommendation question written into the field, and an open-text follow-up asking for the reason behind the score.

Triggers

Asked at the moment it is worth asking

One trigger per survey, chosen from five, plus the same URL and device targeting an experiment uses. Exit intent watches the pointer leaving the viewport on desktop and fast upward scrolling on touch, so it means the same thing on a phone.

  • Page view, a delay, exit intent, a scroll depth, or an event your own site emits
  • The same seven URL conditions and the same device values as an experiment
  • One survey per session across everything running, not one per survey
  • Answered once means never asked again, with no re-ask window at all
A survey's trigger settings: exit intent on checkout pages on mobile, positioned bottom right, capped at two prompts per visitor with a thirty-day cooldown and one survey per session across the account.

Inside the experiment

The quote next to the number

A survey attached to an experiment records which variant of which experiment the visitor was in when they answered. The same question can then be read per variant, which is usually where the explanation for a lift turns out to be.

  • Every response carries the variant the visitor was shown
  • The same question read per arm, sentiment and all
  • Every classification opens the reply that produced it
  • Sentiment stamped once per answer, so a reply nobody could classify stays visible as one
The same NPS question read per variant: variant B scores plus fifty-one against the control's plus twenty-nine, with 184 positive answers against 22, and the responses feed filtered to negative replies.

The widget

What a visitor sees, and how rarely they see it

A survey is a small prompt on your own site, and everything about it is built around not wearing out its welcome. The caps below are the defaults, not the ceiling of what you can configure.

Three question kinds

A scored question, open text, and single choice from a list you write. Up to five questions in one survey, though the shape that gets answered is almost always two: a score, then why.

Four positions

Bottom right, bottom left, bottom centre, or centred over the page. The first three are a prompt; the fourth is an interruption, which is occasionally what you want and usually not.

Matched to your site

Accent colour, background, text colour, corner radius and font. The widget renders inside its own shadow root, so your styles cannot leak into it and it cannot leak into your page.

One survey per session, ever

A global cap, not a per-survey one. Two widgets in one visit is how you teach people to dismiss on sight, so the second never appears however many surveys are running.

Answered once, never asked again

Somebody who replied is not asked that question again, with no re-ask window at all. Somebody who dismissed it is held off for a cooldown you set, up to a maximum number of prompts.

Loaded only where a survey runs

The survey code is a separate bundle, requested last and only when the website has a survey to show. A site with none never asks for the file at all, so it costs nothing rather than a little.

The answers

Reading a few hundred replies without reading a few hundred replies

Scores roll up into one number per instrument. Written answers are classified so the pile stays navigable, and both are attributable to the variant the person was in.

The right headline per instrument

Net promoter score on minus a hundred to a hundred, average satisfaction on one to five, average effort on one to seven. One shared "score" field would be a lie about two of the three.

Sentiment on every written answer

Each comment is classified positive, neutral or negative, and the response feed filters on it. That is what keeps several hundred free-text replies readable rather than merely archived.

Tied to the variant that was shown

A response records which variant of which experiment the visitor was in when they answered. Reading the same question per variant is usually where the explanation for a lift turns out to be.

Response rate you can trust

Impressions are counted separately from responses, so the rate is measured rather than estimated. When nothing has been shown yet the console says so instead of printing nought per cent.

Responses outlive the survey

Ending a survey stops collection and keeps everything collected. Deleting one removes it from the library and still keeps the answers, so a past result stays readable after somebody tidies up.

Targeted like an experiment

The same URL conditions and the same device values an experiment uses, so a survey aimed at mobile checkout means the same thing as a test aimed at mobile checkout.

Questions

Before you put one on your site

Will this annoy our customers?

It is the right thing to worry about, and the caps are built around it rather than bolted on afterwards. At most one survey is shown per session across every survey you are running, not one per survey, because two widgets in one visit is how you teach people to dismiss on sight and that damage is permanent. Somebody who has answered is never asked that question again, with no re-ask window at all. Somebody who dismissed it is left alone for a cooldown you set, and after a small number of prompts is left alone regardless. If the browser cannot tell whether they have been asked before, nothing is shown at all.

Why not just buy a dedicated feedback tool?

If all you want is a score, a dedicated tool is fine. What you cannot get from one is the thing this exists for: every response records which variant of which experiment the visitor was in when they answered, so the same question can be read per arm. An experiment tells you variant B converted better and cannot tell you why. Read the answers per variant and it often can, and the why is what decides what you test next. It also catches the case a conversion metric hides entirely, a variant that wins on conversion while scoring worse on effort.

Will it slow the site down?

Not on pages with no survey running, because nothing is requested at all. The survey code is a separate file from the experiment runtime, and a website with no survey never asks for it: the flag that would trigger the request is simply absent rather than set to false. Where it does load, it loads last, after the page is already visible and after measurement has been requested, so a failure inside it cannot cost you a render or a conversion event.

What do we actually do with a few hundred written answers?

This is the honest failure mode of most feedback programmes: the free-text answers are the valuable part and nobody reads them past the first fifty. Every written answer is classified positive, neutral or negative and the response feed filters on it, which makes the negative bucket reachable, and that is where the specific, actionable complaints are. It is per answer rather than an overall mood, so a high score sitting next to negative comments shows up as the disagreement it is instead of being averaged away.

Which instrument should we start with?

Each one is defined by its scale and by the moment it belongs in. NPS asks about loyalty on nought to ten, after a completed purchase or a support interaction. CSAT asks about satisfaction on one to five, immediately after a specific interaction. CES asks how easy it was on one to seven, after checkout or a self-service task, and it is usually the most useful to conversion work because it finds friction rather than feeling. All three arrive with the standard wording already in place, because an NPS question that does not ask about recommending is not NPS whatever scale it renders.

Everything in the box

The full feature set

Pertento is a conversion-rate-optimisation platform for websites and online stores, built for both in-house teams and CRO agencies running experimentation programmes across a client roster.

Integrations

Works with the stack you already run

One snippet drops into any site, or go fully server-side. Nothing to re-architect.

One-line snippet

Paste a single 0.9 KB tag in your head and you are live. No build step, no dependencies.

Google Tag Manager

Deploy and manage experiments straight through GTM. No developer time required.

Server-side API

Run tests beyond the browser: pricing, search and routing, flicker-free.

  • Shopify
  • BigCommerce
  • Shopware
  • Centra
  • Geins
  • Saleor
  • WordPress
  • Optimizely CMS
  • Storyblok
  • Next.js
  • Vue
  • Astro
  • Matomo
  • Amplitude
  • RudderStack
  • Slack
  • WooCommerce
  • Salesforce
  • Wix
  • Litium
  • commercetools
  • Medusa
  • Drupal
  • Contentful
  • Webflow
  • Nuxt
  • Angular
  • Remix
  • Piwik PRO
  • Mixpanel
  • Tag Manager
  • Webhooks
  • Adobe Commerce
  • PrestaShop
  • Squarespace
  • Norce
  • Shopify Hydrogen
  • Vendure
  • Umbraco
  • Sanity
  • Framer
  • React
  • SvelteKit
  • GA4
  • Adobe Analytics
  • Segment
  • Klaviyo

Not on the list? If it renders HTML, Pertento can test it:read how each one connects.

Better experiments, better conversions

Test on all visitors with the world’s lightest script and make confident decisions powered by real-time reporting.