← John Etokhana

Rivva: an app that plans the day for adults with ADHD

(2025 to 2026)

People with ADHD rarely lack a to-do list. They struggle to start, and to restart when the day falls apart. Rivva did the planning for them.

Rivva's home screen: one next action, the energy mode, and Nia a tap away

Background

Rivva started as a planner built around energy: do hard work when you have the most of it. Our strongest sign-ups had ADHD, so the product team rebuilt Rivva for them.

I co-founded Rivva in July 2025 and led design and research across iOS, Android, web and a browser extension, in a team of eight. We closed Rivva in May 2026.

What’s the impact?

What’s the problem?

Most planners assume you can plan and get going on your own. For adults with ADHD, that’s exactly what comes and goes. They needed help starting, and help recovering when a plan broke.

Our own numbers hid this. Users grew from 394 to 711, but activation fell from 56.8% to 50.2%. It counted people who finished setup, not people the app had helped, so it barely predicted who stayed.

EarlierLater394711Users56.8%50.2%Finished setup

Is this a real problem?

I combined research on executive function, ADHD forums, interviews with early users, and four sessions with Aanu Jide-Ojo, an HCPC-registered clinical psychologist. The same things kept coming up: a to-do list doesn’t help you start, getting things out of your head helps, and once the day derails, people give up on the plan. Aanu reframed it for me: these users need interrupting more than accommodating. I’d designed gentle reminders, the kind I’d want. She told me to start insistent and walk it back.

Research canvas: an empathy map surrounded by grouped notes on what users see, say, do, think and feel

Then I looked for the behaviour that predicted who came back. Within 48 hours, a person had three tasks scheduled by Nia, our assistant, and had finished at least one. People who did this were far more likely to return. That’s a correlation, not proof, but it was strong enough to define activation around it.

Challenges

  1. The metric hid the problem. Finished setup looked like health while the people we built for were leaving. I redefined activation around the behaviour that predicted staying, built a shared PostHog view the team worked from, and argued for pausing the sprint’s roadmap work to fix onboarding first.
  2. Personalising needed context, and asking for it lost people. A questionnaire of about 23 steps came before any help at all.
  3. Our CTO stepped down. Until we closed, I took on engineering delivery: daily morning syncs instead of twice a week, one shared bug list we prioritised together, and a release held back until scheduling was reliable. The engineers kept the technical decisions.

What did we ship?

A first plan in the first session

I proposed and led the new onboarding: no questionnaire, setup moved into the app as a checklist on Home, and a first plan built from gaps in your calendar and whatever you said out loud. It shipped on 12 March 2026.

The old onboarding: a questionnaire asking your name, age, work, environment, what helps you start and for your sleep data
Before: a questionnaire
The new onboarding: import your calendar, say what is on your plate, Nia picks up the tasks, and your plan is ready
After: a first plan
Before
Personalise first
  • Good: Feels tailored and thorough
  • Not so good: About 23 steps before any help
  • Not so good: The drop-off the research warned about
✓ What we shipped
A usable plan first
  • Good: Calendar gaps plus one spoken task, and Nia builds the plan
  • Good: Drives the behaviour that predicted retention
  • Not so good: Less personal on day one
  • Not so good: Fewer people set up energy

Nia proposes, you confirm

Nia broke big tasks into steps, replanned the day when something slipped, and turned emails into tasks. I set the rules it followed. Explicit commands act now, and anything Nia suggests asks first. Nothing saves without approval, and every change can be undone. Its voice was short and warm, with no exclamation marks and no blame.

Earlier Nia: a general assistant greeting with generic prompts and a keyboard
Earlier: a general assistant
Nia v2: how can I help? with three prompts to start from
Later: three focused prompts

When something shifts, plans slip. That’s not on you.

Rivva onboarding copy

I wanted a live waveform while Nia worked. Engineering time won, and the lighter state shows real steps, like checking your availability.

Capture, break down, replan

Nia breaks a task into steps, with Cancel and Approve
Break down
After approving: 4 tasks added, with Undo
Then undo

Replan was for when the day fell apart. My first version led with your usable time left and previewed every change. The shipped one asks what you need right now, a rebuilt day or one quick win, then shows a short reset to apply. With no easy fix, Nia said so:

I couldn’t find a lighter swap right now, so I made this task easier to start.

Nia, when a replan has no easy answer
The first Replan: usable time left and two options, then a preview of every task it would move
First version
Replan, in the app

Wind Down closed the day: what you got done, then what was left. My first version went one task at a time. The shipped one is a stack of cards: swipe right for done, left to reschedule.

The first Wind Down: one task at a time with Reschedule and Mark as done, suggested times, and No time found when nothing fits
First version
Wind Down as shipped: what you got done today, cards to swipe for what is left, then You are all set
Wind Down, shipped

The same loop ran on the web and in a browser extension that made every new tab “next up”. I built one design system across all three from shared components and platform variants, right for a small team. At scale, I’d add semantic tokens first.

Rivva's web app home: up next, the rest of today, and an energy curve
Web
The browser extension: a new tab showing the next task, with Start focus and Mark done
Every new tab

How did we do?

These were weekly cohorts of about a hundred people, not a controlled test. So I read the direction, not the size: 22% to 34% is roughly 22 people becoming 34.

Before the rebuildAfter22%34%Activation51%60%Sign-up to trial

Nothing is quite final

I first put the paywall before anyone had used Nia, and same-day cancellations showed why that failed. We moved it to after Nia had built someone’s first plan, and I accepted losing the people who’d have paid on the promise alone.

Moving setup into the app also meant fewer people set up energy, Rivva’s original idea. Next time I’d have Nia ask about it later.

Why it closed

People who used the core loop kept coming back. What we couldn’t find was a big enough market at the price people would pay, and general AI assistants kept pushing that price down. We closed it cleanly, with subscribers looked after.

Takeaways

  1. Finished setup was easy to count and barely predicted who stayed. Measure the behaviour that predicts staying, not the easiest step.
  2. I designed the gentle reminders for myself, and Aanu knew this audience better. Ask the specialist before you design the default.
  3. People kept coming back, but not enough would pay. Retention and willingness to pay are separate bets, so test both as hard.

On repeat

ForgivenessAsake
↑↓ to move ↵ to openLondon