Skip to content

A voice-memory app on two app stores, designed and shipped solo

RimemboFounder and designerAug 2026 to present

Team. Me, and an AI engineering agent I directed. No human designers or engineers.

My own product. You say a memory out loud, it is written up as something you can read back. I designed it, decided what it would and would not claim, and directed an AI engineer through build and release.

Shipped, not measuredLive on the App Store and Google Play. Not yet measured.

The funnel is fully instrumented and nobody has read it, because an analytics grant is still missing. I would rather say that than quote an engagement number I cannot stand behind.

The situation

An AI product spends real money every time somebody uses it. I wanted to know whether one person can make that arithmetic work.

Rimembo is a voice-memory app. You say something out loud, it comes back written, and it stays in a list that is yours. Live on the App Store and Google Play, eight weeks after the first commit.

The commercial problem is the one every AI product has and most portfolios skip. Each memory costs money to process, so a free tier is a running bill and a subscription is a bet that the average user costs less than they pay. Nobody prioritised this for me. I decided it was the question worth answering, and the answer turned out to be the opposite of what I assumed: free users were never the risk. The paid tier was.

How this was built. I am the designer and the founder. I did not write the production code; an AI engineering agent did, under my direction. Mine are the product decisions, the research, what it may claim, and the proof that it does what it says. That distinction is the part worth interrogating.

It is also the most useful thing here. No brief, no PM to frame the problem, nobody to lose an argument to, no estimates to set the scope. Every constraint was mine or reality's.

What I decided

01

Write down what the product may never claim, before writing what it does

The clearest: never promise someone they will hear a voice again. Playback exists only before you save, and there is no player on a saved memory. The app cannot do it, and a bereaved person finding that out is a harm, not a churn event.

Others: no testimonial, because the one I inherited was unattributed. No user count anywhere, because a fabricated metric in the most prominent position is the same problem as a fabricated quote. No mocked-up interface. Never "unlimited" about a thing with a ceiling.

Writing them first made the honest version the cheap one. Every prohibition has already stopped something.

Instead of
Marketing copy approved case by case, which is how every product I have worked on handles it.
What it cost
Fourteen standing prohibitions that rule out language a growth team would reach for first.
02

Turn the model's reasoning off, rather than give it more room

The feature that answers questions about your own memories was losing whole answers in Portuguese and not in English. Reasoning tokens count against the output budget, and Portuguese reasoning ran far longer:

ConfigurationPortuguese passedLatency
Budget 2,400, reasoning on (shipped)1 of 36 to 10s
Budget 4,000, reasoning on3 of 311 to 16s
Budget 4,000, reasoning off3 of 31.8 to 5.0s

The documented fix worked and made the product slower. The other one fixed it and made it three times faster. Only measuring all three found that.

Instead of
Raising the output budget, which is the documented fix and the one I shipped first.
What it cost
Reasoning is genuinely useful for some answers, and losing it forced a second change to ship in the same release.
03

Replace the last onboarding slide instead of adding one

The third slide showed a paid-tier feature, so the last thing a new free user saw before the register wall was something they could not have. The free feature the store listing leads with went unmentioned entirely.

Replaced, not added, because every slide before registering costs completion. In the same pass I rewrote two cards that were quietly false: "captures every word", when what you get is a rewrite, and memories kept forever, when free storage is capped.

Instead of
Adding a fourth slide for the feature the store listing leads with.
What it cost
A feature that paying users like lost its only moment of introduction.
04

Kill the pricing tier I had already designed

The plan was to charge more for broader questions. One month is cheap, a whole life means reading everything, so a wider question should cost more. Obvious, and wrong.

I measured before building the billing. Output saturates near 300 tokens, because the answer is capped at a few paragraphs however much goes in. The widest question measured 1.17 times the narrowest. There was no ladder to sell, only a charge customers would feel and I could not justify.

An afternoon to find out. A quarter to unwind.

Instead of
Shipping it. The work was done and the argument for it was intuitive.
What it cost
A revenue line the business plan assumed, removed on the strength of one measurement.
05

Clamp the prediction between 5 and 95%, so it can never say certain

The app estimates how likely something is. The published terms say that figure has no statistical or clinical validity, which is true. A screen reading 0% or 100% would make three published documents false at once, and land as a verdict on the people least able to afford one. Raw value stored, shown value clamped.

Instead of
Showing the raw figure the model produces.
What it cost
The most confident, most screenshot-worthy output the product could generate is one it is now structurally unable to produce.

What shipped

Live on both stores. The screen below is the one the whole product has to earn.

A list of recordings is a chore. A list of named moments is something you reopen. Every title here was written by the model from what someone said out loud. The titling is the product.

Rimembo memory library on iPhone: a search field, category filter chips for family, work, sport, travel, friends and nature, and a list of saved memories each with an AI-written title, a date and a category.
The library, from the published App Store listing. Search, eight categories, and a list in date order. Deliberately ordinary, because the unusual part already happened before the memory got here.

How I verified it, since nobody else was going to

No code review, no QA. The substitute is deciding in advance what would count as proof.

A passing test suite is not an honest answer. The question feature scored 14 out of 14, and I read the answers anyway. One contained a fabricated detail. Another fused two memories into one scene. Both passed every mechanical check, because the checks test shape and these were failures of truth.

Account deletion had never once run in production. The privacy policy promised, by name, that thirteen categories would be erased. The deployed function knew eleven. I found it by seeding an account and deleting it, not by reading the code, which I had already done and which said it was fine.

I costed a free user before guessing at pricing. One memory costs about a third of a cent. Filling the whole free allowance costs 28 cents once, then three a year. Free users were never the risk, which is the opposite of what everyone assumes about a generous free tier.

The risk was the tier I charged for. No monthly ceiling, so a subscriber breaks even near 950 three minute memories a month and a determined one could reach 21,900: about 125 dollars of cost against 5.40 of revenue. Nobody would do that by accident, but it is why I capped the paid tier rather than the free one.

The failure I was designing against

Not that nobody tries it. That everybody tries it once.

This kind of app has a flattering failure mode. The first recording works, the write-up beats expectations, people tell a friend. That is a party trick, and for a fortnight its numbers look like traction.

The real question is the second memory, then the fourth. Somewhere in there a person finds out whether this is a habit or a novelty, and the first run tells you nothing. What I guard is the gap between installing and having a reason to come back on an ordinary Tuesday.

Two decisions here exist because of that. Onboarding leads with the free, open-ended feature rather than the paywalled one, because a first run advertising what you cannot have teaches people the app is not for them. And the prohibitions rule out every claim that strengthens the first impression at the cost of the fourth.

What I would do differently

I have no outcome data, and that is my own fault. Every meaningful event is instrumented and nobody has read any of it, because an analytics permission was never granted. I can tell you exactly what was built and why, and nothing about whether people stay.

Worse, cohort retention is impossible for the first two months: user records carried no creation date until I fixed it. That history is gone. Instrumenting the funnel felt like measuring. It was plumbing.

Second, I spent real design effort on a paid tier before establishing that anyone wanted the free one. Nobody has purchased. I sequenced this like someone who had already decided it would work.