Sign inStart free

Every testimonial, accounted for.

Proof Impact ties published-widget impressions to the conversions observed after them — 3 attribution views, per-event lookback windows, and exports your finance team will actually open.

Free plan, no card · attribution on Premium at $49/mo
Lookback4 hours–30 days per event
IdentitySame-tab or consented identity
Models3 included
Proof Impact · illustrative product preview/example project
observed attribution · fractional
Illustrative attributed value
$1,240Observed credit
EXAMPLE · ONE CONVERSION
Credit split evenly across every qualifying touch. The total stays the same — the models only argue about who gets credit.
Credit by touchpoint
Wall of Love · /customers
$310
Pricing carousel · /pricing
$310
Founder video · /product
$310
Rating badge · /checkout
$310
Illustrative conversion feedexample data
13:42:08“Replaced three tools in one move.”Wall of Love · /customers+$248
13:42:03“Paid for itself almost immediately.”Pricing carousel · /pricing+$49
13:41:51“Setup took one coffee break.”Founder video · /product+$1,240
13:41:44“Worth every dollar.”Rating badge · /checkout+$49
13:41:32“Our sales team stopped repeating themselves.”Pricing carousel · /pricing+$248
Simulated preview · Nothing is saved or sent.
Proof Impact reports observed attribution, not causal or incremental lift.

Overview · 2:34

See the journey behind your proof.

Follow one signup from earlier proof exposures to a decision your team can inspect.

9 chapters · Captions

Read the transcript

What happened after the proof?

A customer story is part of the journey. But which proof appeared before someone signed up? Proof Impact connects eligible widget impressions with the actions that follow.

Define the outcome that matters

Start with the outcome that matters to your business: a signup, a lead, or a purchase. For Driftlane, choose Customer signup. Give the event a clear name, include it in reporting, and choose its attribution window.

Connect your website

Install a published widget and connect your website’s successful signup to the tracking integration. The setup guide includes framework examples. Send test conversion offers an isolated diagnostic. Creating an event alone does not connect your website.

Follow one example journey

Here is one example journey. A visitor encounters Marina’s story on the agency page, then Lena’s on pricing, and creates an account in the same tab. After processing, the signup has qualifying earlier proof. Proof Impact reports observed attribution, not causal or incremental lift.

Three ways to allocate credit

One signup. Three ways to understand the proof that preceded it. Last-touch credits the latest qualifying exposure. First-touch credits the earliest. Fractional shares credit across both. The allocation changes; the actual signup count stays at one. These are different perspectives on the same journey.

Find the useful detail

Look beyond a total. Explore the customer stories, widgets, and page paths connected to your outcomes. Filter to the page you want to inspect. When you use Contextual Proof Match, rule-level reporting adds another useful perspective.

Understand the evidence

Missing attribution deserves investigation. Was there a qualifying exposure inside the window? Data Quality helps you inspect incomplete evidence. Consent and identity settings also affect what can be connected. A missing match does not prove there was no influence.

Turn evidence into a next step

Export the attribution summary for your team. Use the evidence to review placement or guide collection priorities. For purchases, browser-reported values and signed server evidence remain distinct.

Make the next decision informed

Track. Understand. Act. Start measuring your proof with ReTestimonial. Available on Premium and Business.

01The problem

Your testimonials are off the books.

Every other line on the marketing report has a number next to it. Social proof — the thing your visitors actually read before they buy — usually has a question mark. So it gets defended with vibes, and cut first.

Proof Impact gives testimonials their own line: which accepted widget impressions were observed before each configured conversion, under that event’s same-tab or consented-identity scope. Attribution credit you can inspect — not a causality claim.

FLOWLINE INC
Q3 · MARKETING SPEND vs RESULTS · EXAMPLE
Google Ads$48,2002.7×
LinkedIn Ads$22,5001.9×
SEO content$18,0004.2×
Email$2,40011.9×
Webinars$6,8002.7×
Testimonials$840/mo?← invisible to finance
TOTAL TRACKED$297,100
** REPORT INCOMPLETE WITHOUT PROOF IMPACT **
02How it works

From impression to observed outcome in four entries.

first-party context · configured per event
01

Impression

A published widget records an accepted embed view — with the page, widget, and matching rule attached.

published widgets
02

Conversion

The outcome reaches the ledger your way: a browser call to window.retestimonial.convert(), a server key, or a signed order from your backend.

3 ingestion paths
03

Attribution

Durable background jobs credit qualifying impressions under each event's lookback window and identity scope. Minutes, not milliseconds — and never a silently dropped event.

retries built in
04

Ledger

5 dashboard views — Overview, Attribution, Experiments, Data Quality, Auto-Optimize — plus CSV, raw-ledger, and JSON exports.

5 views + exports
$POST/api/public/proof/convert·{ event: "purchase_completed", value: 49, currency: "USD" }accepted · attribution pending
03The event catalog

Define the outcome before you instrument it.

Conversions aren’t loose strings here. Each outcome is a configured event with a role — Primary, Secondary, or Guardrail — and a value policy, created from 9 starter templates or from scratch. Fire a dry-run test conversion to verify the wiring before anything counts.

9 starter templates

Completed purchase

configured before instrumented

A customer completes a paid order.

Event keypurchase_completed
RolePrimary outcome
Value policyValue required
Lookback options4 hours · 1 day · 7 days · 30 days
Identity scopeSame-tab or consented identity
STRICT mode: event keys that were never configured are rejected with a 422 — a typo can’t quietly pollute the ledger. Switch an event to DISCOVERY mode when you’re still exploring.
await window.retestimonial.ready();
await window.retestimonial.convert({
  event: "purchase_completed",
  idempotencyKey: order.id, // Stable across retries and reloads.
  value: order.total,
  currency: "USD",
  widgetKey: "your-widget-key",
});
Simulated preview · Nothing is saved or sent. Example snippets — your dashboard generates these with your real embed key.
04The models

3 ways to read the same ledger.

same total · different credit

Last-touch

All credit to the proof seen closest to the conversion.

Use forBottom-of-funnel closers.

First-touch

All credit to the proof that opened the journey.

Use forTop-of-funnel discovery.

Fractional

Credit split evenly across every qualifying touch.

Use forMulti-touch journeys.
Ledger definitions · printed on purpose
Attributed conversionsUnique included conversions with at least one qualifying proof impression under that event's snapshotted identity scope and configured attribution window.
Attribution coverageUnique attributed conversions divided by all included conversions. This is observational coverage, not causal lift.
Attributed valueValidated single-currency recognized conversion value, after accepted signed order refunds/cancellations, allocated across qualifying proof touches under the selected attribution model. Revenue trust is disclosed separately; browser-reported value remains observational and this is not incremental revenue.
The same definitions the dashboard shows. If a metric needs a footnote, we print the footnote.

Give proof its own line on the revenue report.

Start free — no card
05Revenue trust

Refunds un-count themselves.

Attribution numbers only matter if the revenue underneath them is honest. Signed order lifecycle events — HMAC-SHA256 signatures, timestamped requests, monotonic revisions — keep the ledger reconciled when orders change: COMPLETED, PARTIALLY_REFUNDED, REFUNDED, CANCELLED.

Two trust tiers, always visible
Browser-reported values stay flagged as unverified; values from rtpi_ server keys and signed orders are marked server-authenticated.
Exact money, no fiction
Integer minor units, ISO-4217 currencies, no implicit FX. Mixed currencies suppress the total instead of faking a sum.
Keys you can rotate
Server API keys are shown once and stored only as hashes. Rotate or revoke from Developer settings any time.
Order ledger · exampleSIGNED · V1
rev 1COMPLETED$149.00 attributed+$149.00
rev 2PARTIALLY_REFUNDED$99.00 attributed−$50.00
rev 3REFUNDED$0.00 attributed−$99.00
Attributed value follows the money — automatically, with example data shown here.
06Privacy

Attribution without the creepy parts.

Read the Proof Impact Privacy & Data Guide
No cookies
Session context lives in same-tab sessionStorage; at most one first-party visitor alias in localStorage, and only after consent allows it.
GPC & DNT honored
Global Privacy Control and Do Not Track are honored by default; your workspace's privacy-signal posture is set in Developer settings.
Hashed identities
Consented identity aliases are stored as per-project HMAC hashes with a dedicated salt. Raw emails and phone numbers are never stored as aliases.
Fail-closed resolution
If identity resolution can't run safely, attribution falls back to same-tab session scope instead of guessing.
Never on the menu
No fingerprinting
No probabilistic matching
No cross-site tracking
No raw email or phone aliases
Consent mode and an origin allow-list are configured in Developer settings; each event picks same-tab or consented-identity scope.
07Methodology

Numbers you can defend in a data review.

Most attribution tools oversell what observation can prove. We wrote the boundary into the product instead — the same sentence appears on this page, in the dashboard, and in the docs:

Proof Impact reports observed attribution, not causal or incremental lift.
Causal liftNot claimed
Incremental revenueNot claimed
Automatic winner promotionDisabled pending experiment rollout
ExperimentsAnalysis beta · Business plan

Why buy attribution that refuses to overclaim? Because the first hard question in every revenue review is “where did this number come from?” — and this one has an answer.

08Plans

Attribution starts on Premium.

start free · upgrade when ready
Capability
Free
$0
Pro
$29/mo
Premium
$49/mo
Business
$79/mo
Widgets, forms & Wall of Love
Observed attribution · 3 models——
Conversion event catalog + dry-run test——
Server API keys & signed orders——
Attribution summary, ledger & JSON exports——
Experiments (analysis beta)———
Auto-Optimize (no live promotion)———
Every limit, side by side — compare full plans on the pricing page.
09Questions

Asked before buying.

Is this causal attribution — does it prove a testimonial drove revenue?

No, and the product says so on every surface: Proof Impact reports observed attribution, not causal or incremental lift. Proof Impact shows which accepted widget impressions were observed before a configured conversion, under each event's lookback window and identity scope. That's evidence you can inspect and defend — not a causality claim. Randomized experiments (an analysis beta on Business) are the path toward lift questions.

How much setup work is it?

Three steps. Publish a widget (the embed you likely already have), create a conversion event — 9 ready-made templates like customer_signup and purchase_completed cover the common outcomes — and add one conversion call where the outcome happens. The dashboard generates copy-paste snippets with your real embed key, and a dry-run test conversion verifies the wiring without storing anything.

Do I need a cookie banner for this?

Proof Impact sets no cookies. It uses same-tab sessionStorage, honors Global Privacy Control and Do Not Track by default, supports an explicit consent mode and an origin allow-list, and stores consented identities only as salted, per-project hashes. The details live in the Proof Impact Privacy & Data Guide at /privacy/proof-impact.

Which plan do I need?

Attribution is included on Premium ($49/mo) and above — all 3 models, the event catalog, server keys, and exports. Business ($79/mo) adds the experiments analysis beta and Auto-Optimize. You can start on Free with widgets and testimonial collection, then upgrade when you want the attribution ledger.

What happens when an order is refunded?

Attributed value follows the money. The signed order lifecycle accepts COMPLETED, PARTIALLY_REFUNDED, REFUNDED, and CANCELLED states with monotonic revisions, and reconciles attributed value when an order changes — a refunded order stops counting. Browser-reported values are always flagged separately from server-authenticated ones.

Does it work with my stack?

If the widget embeds on your site, Proof Impact works there. Conversions arrive three ways: a browser call (window.retestimonial.convert), a server-to-server call authenticated with a rtpi_ API key, or signed order lifecycle calls from your backend. Getting data out is just as open: attribution summary CSV, a raw ledger export, and a full JSON export for your BI tool.

How fast do conversions show up, and how far back does attribution look?

Conversions are accepted immediately and attributed by durable background jobs — typically within minutes, with automatic retries so nothing is silently dropped. Lookback is configured per event: 4 hours–30 days per event, with 4 hours, 1 day, 7 days, 30 days windows to choose from.

Connect proof to the outcomes observed after it.

Publish a widget, define your first conversion event, add one call where the outcome happens — then read the ledger in last-touch, first-touch, fractional views.

MethodObserved attribution
SetupA widget + one conversion call
AttributionPremium · $49/mo
StartFree plan · no card
Keep exploring