


Context. SnapID is my own iOS app:
it turns a selfie into a print-ready
passport or visa photo.






Onboarding. An important part of
the app and of its monetisation:
80% of purchases come right after it.









The funnel. Nearly nine in ten
installs finish the onboarding and
see the paywall. One in six taps buy.
Problem. A passport photo still means
a trip to a studio, or a careful attempt at
home that gets rejected. Every country
asks for something slightly different.

Goal. One photo from the phone you
already have, in the exact size the
document needs ✦


The flow. Take a selfie or pick one from
the library, and the AI does the rest: a
pure white background, even lighting,
the face centred, the person still
looking like themselves.


Any document, 25+ countries.
Presets for passports, visas,
driving licences and student IDs in
25+ countries, each with its own size,
and a custom size for anything else.

Dress for the document. No need to
change clothes for one photo: the AI
replaces the outfit with a shirt, a suit or
a turtleneck that still reads as real.


Under the hood. The face, the crop
and the white background happen
on the phone. Only the studio look
goes to Gemini, through a server
that holds the key.

Find the face
Vision, on the phone

Crop to the rules
Head 70% of the height

Studio look
Gemini, about 10 s

Print sheet
10 × 15 cm, six photos
Shipped solo. Designed in Figma, built
in SwiftUI with Claude Code, submitted
to the App Store and instrumented
with PostHog, all by me.
The App Store page, its screenshots
and their localisations are part of
the same design work.

The UAE. Since April, under a third
of the installs but 14 of 17
subscribers. Residence visas and
Emirates IDs ask for a fresh photo
at every renewal.
29%
of installs come from the UAE
14 of 17
subscribers are in the UAE
16%
of installs there subscribe
1.4%
everywhere else
Impact. Additional income
to my full time-job.
$130
revenue per month
6
subs per month (avg)
UAE
the main market
4.7%
install to paid
Thanks.Ask the assistant anything about
this project, or read a next case