Metrickle

Measure whether people can do what they came to do

Define a task and Metrickle reports how many people finish it, how long it takes and where the rest give up. Then use friction, journeys, surveys and replay to find out why, on the same data.

Task: Find and save a plantbloom.shop · last 30 days
Success rate58%
Median time1m 52s
p90 time5m 40s
Where abandoned attempts stopped: the last page reached and the number of attempts
Last page reachedChartAttempts
/search1,284
/plants/*590
/login402
/care-guides157

Most failed attempts end on search. Over half of all abandoned attempts stop there, usually after a dead click on the filter chips.

From a hunch to a finding in three steps

A walkthrough on bloom.shop and acme.com, demo apps with sample data. Tasks run on the events you already send, so they work on past data from the moment you save one.

  1. Define the task

    Pick where it starts and what counts as success: a page, a screen or an event. Set how long people have before an attempt counts as abandoned.

  2. See where it fails

    Read success rate, median and p90 time on task, and the last page reached by attempts that never succeeded. Split any of it by platform, app version or accessibility setting.

  3. Find out why

    Compare friction in failed and successful attempts, follow journeys from the step people stall on, ask a one-question survey there, and watch consented replays.

Separate the friction that stops people from the noise

The script tag captures rage clicks, dead clicks, error clicks, u-turns, form errors and abandoned forms on its own. The friction report ranks them by element and page, with the number of sessions affected.

Inside a task, friction is split by outcome. A dead click that shows up everywhere is a nuisance. One that shows up mostly in abandoned attempts is a finding.

  • Nothing to tag by hand: friction arrives from the first page view.
  • Field values are never read. A form error is recorded, not what was typed. Add data-mk-mask to keep an element’s text out.
  • Friction rate per page, so you can find the screens where the most sessions struggle.
Friction: completed vs abandonedTask: Create a project · acme.com
Abandoned842
Friction, completed14%
Friction, abandoned61%
Friction signals seen during abandoned attempts
SignalAttempts
U-turn left the template picker388
Dead click div.template-card241
Form error input#project-name133
Rage click button "Create"64

Abandoned attempts hit friction four times as often. The top signal is a u-turn out of the template picker, which rarely shows up in attempts that succeed.

Follow what people actually do, and whether they come back

Journeys draw a Sankey flow of how people move through your site or app, anchored at any page or screen. Start from the step where a task stalls and see where people go instead.

Cohort retention shows whether each day’s or week’s new visitors come back. When a number looks odd, open a single visitor’s session timeline and read their events in order, alongside a live event stream.

  • Journeys re-anchor on any page, with the top paths at each step.
  • Retention by day or week, keyed on when each visitor was first seen, in each app’s time zone.
  • Session timelines per visitor: pages, events, friction and survey answers in one sequence.
Cohort retentionOrbit iOS · weekly cohorts
Share of each weekly cohort still active one, two and three weeks after they were first seen
First seenPeopleWeek 1Week 2Week 3
18 Aug1,20438%27%22%
25 Aug1,31836%26%21%
1 Sep1,45044%34%29%
8 Sep1,39145%35%Not yet

Cohorts from September hold about 8 points better in week 1. Journeys show them reaching the new onboarding checklist in their first session.

Ask at the moment it happens, then watch it

In-app surveys ask NPS, CSAT, effort, star rating, multiple choice or open text. Target them by page, event, app version, platform, sign-in or accessibility setting, with sampling, frequency caps and schedules.

Every answer is an event. “People who found it very hard” becomes a filter on journeys, funnels, friction and replays, so what people say and what they did sit side by side.

  • “Report a problem” widget: always on, with categories and an optional screenshot people can highlight or partly hide before sending.
  • Heatmaps: clicks and scroll depth per page and device width, with a text summary and data tables.
  • Session replay: opt-in and consent-gated, every input masked and all text masked by default, with friction and answers marked on the timeline.

Start your research

Survey: How easy was that?Customer effort · after Create project
Responses612
Average4.9 / 7
Scored 1–286
Effort score answers grouped into bands, with the share of responses in each
AnswerChartShare
Very easy (6–7)48%
Fine (3–5)38%
Very hard (1–2)14%

Answers are events, so “scored 1–2” is a filter. Applied to replays, most of those 86 sessions show the same u-turn out of the template picker.

Surveys and feedback run on web and in the iOS, Android, Flutter and React Native SDKs. Heatmaps and replay are web-only for now.

Common questions

What’s the difference between a task and a funnel?

A task has a start and a success, and measures how often people get from one to the other, how long it takes, and where failed attempts stopped. A funnel has two to ten ordered steps and shows drop-off between each. Use a task for “can people do this?” and a funnel for “which step loses them?”.

When does an attempt count as abandoned?

When the success step doesn’t happen within the task’s time window. The default is 30 minutes and it can be up to 30 days, for tasks like “finish onboarding within a week”.

Which research features work in mobile apps?

Tasks, funnels, journeys, retention, session timelines and accessibility segments work for any app that sends events, including iOS and Android. Surveys, feedback, rage taps and u-turns work in the iOS, Android, Flutter and React Native SDKs too. Heatmaps and replay are web-only for now.

Is session replay safe to switch on?

Replay is off until you enable it per app, and by default it waits for the visitor’s consent. Every input is masked and all text is masked unless you mark a region as safe with data-mk-unmask. Elements marked data-mk-block are left out entirely.

Does Metrickle run moderated usability tests or recruit participants?

No. Metrickle measures what real users do in your live product and asks them short questions in context. It works well alongside moderated sessions: use it to decide what to test, and to check whether the fix worked for everyone.

See where your apps break, and who they break for

Free to start. One script tag on the web, one SDK on mobile, and no cookie banner in cookieless mode.

Start tracking for free