Skip to content
TAA

Article

SnapShots — building a daily-engagement app that retains 73 % of users

A photo-recognition quiz, Flutter on the front, Quarkus on the back. The architecture pattern for any app that lives or dies by daily return visits.

May 8, 2026 · Marcel R. G. Berger · 3 min

  • article
  • custom app development
  • flutter
  • engagement
  • snapshots
Share

SnapShots looks like a small quiz game. Architecturally it is the answer to every “we need users to come back daily” product question — onboarding gamification, training drills, loyalty mechanics, learning apps.

Three things make daily-engagement apps work, and only three. The visible part — the actual game — is rarely one of them.

What actually matters

Fresh content every day, automatically. A user who opens the app and sees the same five puzzles as yesterday will not be back the day after. SnapShots has a content engine that pre-generates a daily challenge server-side, caches it, and pushes notifications when the new one drops. Without that, the game shell could be perfect and the app would still die.

Streaks that are forgiving. A user who breaks a 28-day streak because they were on vacation will not come back. SnapShots’ streak counter has a single “skip day” allowance per week. The retention curve responds visibly to that one rule.

A reason to play once you’ve answered today’s challenge. Daily challenges alone produce 90-second sessions. SnapShots layers rotating curated decks behind the daily challenge — same engine, optional dive — which doubled average session time without changing the daily-engagement metric.

The stack

Flutter app talking to a Quarkus backend. The puzzle catalog and the daily-challenge computation live on the server; the client is intentionally thin. This matters because content updates ship without an App Store review — the only thing that goes through App Store review is the rendering engine.

Push notifications are sized to the user’s local time zone, sent through Apple Push Notification service and Firebase Cloud Messaging. The asset pipeline pre-generates compressed images for each device-class so users on older phones do not pay for full-resolution assets they can’t render.

What you’d use this for

You probably don’t need a quiz game. You might need:

  • An onboarding app that an employee needs to open daily for 30 days.
  • A training drill that walks a junior team member through a procedure with daily variations.
  • A gamified loyalty program where the daily mechanic is the lever.
  • A learning app where spaced repetition is the business model.

The same three rules apply: fresh content, forgiving streaks, a layer behind the daily moment. The same stack delivers them.

Outcomes for SnapShots

  • Daily-active retention 73 % as of this writing.
  • Session length 4.2 minutes average — small for a “game”, deliberate for an engagement-loop product.
  • App size 8 MB down from 12 MB after the server-side rewrite of the daily-challenge engine.

If you’re building a product whose unit economics need daily return visits, start a project brief and I’ll show you what the daily-content engine for your specific domain would look like.


See it on the App StoreSnapShots is free. Five days with the daily challenge is the fastest way to feel why a retention curve responds to forgiving streaks.

Share