For business

Measure the moment, not the quarter

Quarterly survey blasts get a 2% response rate from the people least representative of your customers. Reakt asks one question at the instant something happened, so the answer is about that thing — and enough people answer that the number means something.

The whole integration

One tag, one call. Everything else is dashboard.

checkout-success.tsx
// after the order actually lands
Reakt.ask('post-purchase', {
  userId: order.customerId,
  meta: { plan: 'pro', orderId: order.id },
})

What the setup actually looks like

Five steps. One of them needs an engineer, for about ten minutes.

  1. Pick the moment that matters

    day 1

    Not "how are we doing" in a quarterly email. Pick the exact instant a customer just felt something: the order landed, the ticket closed, onboarding finished. One moment per survey.

  2. Describe it and let Reakt write it

    2 minutes

    Type "post-checkout vibe check for a sneaker drop" and you get a finished survey — reaction scale, NPS question, follow-up prompt. Edit anything in the builder, or start from scratch if you would rather.

  3. Hand one line to an engineer

    ~10 minutes of dev time

    One script tag, then a single call at the moment you picked. It renders in a sandboxed iframe, so it cannot touch your DOM, your styles, or your bundle size. No design review needed.

  4. Attach the context you already have

    same PR

    Pass plan, region, order ID, experiment bucket — whatever identifies the moment. This is the difference between "NPS is 34" and "NPS is 34, and it is 12 for enterprise users in EU-west."

  5. Read it, then route it

    ongoing

    Watch NPS and CSAT trend by week, filter by any metadata key, and export CSV for your warehouse. Detractor comments are where the actual product roadmap hides.

Moments worth asking about

The pattern is always the same: fire on an event that already exists in your system, and attach the context you already have.

Post-purchase

Fire on order.delivered instead of at checkout. People rate the thing they received, not the form they filled in.

Support resolution

Trigger on ticket.closed with the agent and queue attached, so CSAT is attributable instead of anonymous.

Onboarding complete

Catch the moment activation happens. This is the single best predictor of whether they are still here in 90 days.

Feature adoption

Attach an experiment bucket and compare reaction distributions between variants, not just conversion.

The whole integration

Pick whichever half fits your stack. Frontend event mapping, or a backend call that hands you a link to send however you like.

Frontend — map an event
// once, at boot
Reakt.on('order.delivered', 'post-delivery-check-in')

// then anywhere in your app
Reakt.track('order.delivered', {
  userId: user.id,
  plan: user.plan,
  region: user.region,
})
Backend — get a sendable link
// no frontend at all — get a link and send it yourself
const res = await fetch('https://reakt.app/api/v1/trigger', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.REAKT_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    surveySlug: 'post-delivery-check-in',
    metadata: { userId: 'usr_8812', channel: 'sms' },
  }),
})

const { url } = await res.json() // text it, email it, print it as a QR

Questions people actually ask

How much engineering time does this actually take?

A script tag and one function call — most teams ship it in under half an hour. If you would rather not touch the frontend at all, the trigger API returns a plain URL your backend can send over email, SMS, or push.

Will it slow down or break our app?

The SDK loads nothing until you open a survey, and the survey itself renders inside a sandboxed iframe. It cannot read your DOM, inherit your styles, or leak CSS into your page.

Do we still get real NPS, or just emoji?

Both. Every reaction maps to a 0-10 score, so NPS is calculated the standard way — promoters minus detractors. The stickers are the input method, not the metric.

Can we segment responses by customer or plan?

Yes. Any metadata you attach at trigger time is stored on the response row and becomes a filter in the dashboard. Up to 20 keys per response.

How do we get the data into our own tools?

Export CSV from the responses view, or read responses through the API. Everything you see in the dashboard is available programmatically.

What does it cost?

Pricing is not published yet. Create a workspace and start collecting responses, and we will talk before any limit affects you.

Try it on one moment

Pick your worst-understood step and point Reakt at it. You will know something new by Friday.

Get started