This console shows operational metrics only. User transactions, receipts and backups are encrypted on-device — by design, no admin can read them here.
AI scans today
142
▲ 8% vs yesterday
AI cost today
₦6,650
$4.03 · ≈ ₦47 / scan
Avg latency
2.9s
msSum ÷ attempts
Error rate
2.1%
3 of 145 attempts
AI scan volume · 14 days
peak 153
Proxy health
Success rate97.9%
Avg latency2.9s
Error rate2.1%
Text-only requests: 38% · images discarded after read
Beta access
config/beta
37 / 250
provisioned accounts · 213 slots free
Raises maxUsers — invites still pull from the waitlist
Recent events
Scan-rate anomaly · account #4471 (94 scans/hr)
New contact message · "Can I export to CSV?"
Waitlist · 18 new signups (iOS 11 · Android 7)1h ago
Scan rollup · 142 scans, 3 errors, $4.03today
Active accounts
37 / 250
213 slots free
Avg scans / account
23 / mo
Cost / scan
₦47
$0.028 · FX ₦1,650/$
Error rate · 30d
2.4%
88 of 3,728 attempts
Token usage · 30 days
metrics/*
Input tokens11.6M
Output tokens2.1M
Avg per scan: 3.4K in · 640 out · text-only mode lowers this
Plan mix
Starter (free)26
Plus9
Pro2
11 paid of 37 · from users/*.plan
Allowance burn by plan · avg used
users/*.allowanceUsed
Starter — 20 / mo42%
Plus — 40 / mo58%
Pro — 150 / mo31%
AI cost · 12 months
₦172K last 30d
{{ r.m }}
Proxy spend (costMicroUsd) — not revenue · ₦ via display FX
Scans per account · 30d
1–1019
11–5013
51–2004
200+ · flagged1
Grouped from scan_events by uid
Accounts
37 / 250
▲ +6 this week
Paid
11 · 30%
9 Plus · 2 Pro
Sync enabled
14
multi-device backup on
Near / over quota
3
upsell candidates
All accounts · 37
Search by uid
O
o••••@gmail.com
Pro · 2 devices · 2m ago
ProActive
E
e••••@gmail.com
Pro · 3 devices · 30m ago
ProActive
A
a••••@gmail.com
Plus · 1 device · 1h ago
PlusActive
C
c••••@gmail.com
Plus · sync off · 2d ago
PlusActive
T
t••••@yahoo.com
Plus · 2 devices · 38/40 scans
PlusNear quota
B
b••••@icloud.com
Starter · 20/20 used · 6h ago
StarterUpsell
M
m••••@gmail.com
Plus · scan-rate anomaly · 21m ago
PlusFlagged
K
k••••@outlook.com
Starter · 1 device · 1d ago
StarterActive
Emails are masked and IDs are pseudonymous. Operators never see expense data, receipts or backup contents — those are encrypted on-device.
OTP codes expire in 10 min · rate-limited 5/hr per account. The four KPIs below are live from auth_otp_events; the funnel and trend charts are sample shapes.
Codes sent · 24h
312
▲ signups + purchases
Verify success
89%
274 of 308 delivered
Median time-to-verify
24s
sent → entered
Deliverability
98.7%
4 bounced of 312
OTP funnel · 24h
auth_otp_events
Sent312 · 100%
Delivered308 · 98.7%
Verified274 · 87.8%
Expired 22 · wrong code 9 · resent 31
Outcomes · 24h
Verified274
Expired22
Wrong code9
Locked · rate-limited3
Lockout after 5 wrong attempts · auto-clears in 1h
Deliverability by domain
gmail.com99.2%
icloud.com98.9%
outlook.com98.4%
yahoo.com97.1%
Yahoo trending low — watch for spam-folder placement
Verify success · 14 days
avg 90%
Share of delivered codes verified within 10-min expiry window
Behaviour-change KPIs — aggregate counts only, no user content. This is the signal that the mission is working.
Have a budget
68%
▲ 6pts this month
Have a savings goal
41%
of active accounts
Median review streak
4 wk
weekly-review habit
Found-money accepted
57%
of nudges shown
Weekly-review streak distribution
{{ s.label }}
Accounts grouped by consecutive weekly reviews
Found-money nudge funnel · 30d
Shown2,140 · 100%
Set aside (logged)1,220 · 57%
Reached a goal milestone410 · 19%
Riffl records the set-aside; money never moves through Riffl.
Free
26
70% of accounts
Plus
11
▲ 3 this month
Pro
0
not opened yet
Free → Plus
9.4%
30-day conversion
Conversion funnel · 30d
Free signups26 · 100%
Hit a Plus gate18 · 69%
Opened paywall12 · 46%
Started Plus3 · 11.5%
Which gate drove the upgrade
{{ g.name }}{{ g.count }}
UpgradeScreen → paywall → start, by originating feature · top-up vs subscription: 8 / 3
Illustrative · Soon. The encrypted blob store + sync engine aren't shipped yet. These are the metrics we'll watch — all counts, zero-knowledge (server sees opaque blobs, never content).
Devices syncing
—
awaiting launch
Sync success rate
—
target ≥ 99.5%
Blob storage used
—
opaque blobs only
Restore success
—
new-device flow
Sync dashboard wires up when the backend ships
Once the zero-knowledge blob store is live, this panel fills with device counts, success rates and restore outcomes — all aggregate, never the encrypted contents.
COMING SOON · illustrative. Pro / Net Worth isn't built. These are the metrics we'll watch — counts only, never values or holdings. Net worth is the most sensitive data; the server never sees amounts.
Pro users w/ ≥1 asset
—
awaiting Pro launch
Median assets / user
—
count only
Track a liability
—
% of Pro
Price-fed opt-in
—
public prices only
Asset-class mix
How many users track each class — counts, not amounts
{{ c.name }}{{ c.count }}
Adoption metrics light up when Pro ships
Designed in full, deliberately deferred until the Plus launch product is proven. The server will only ever store counts and class flags — never a single net-worth figure.
Scans · 30 days
3,640
Cost · 30 days
₦172K
$104 · FX ₦1,650/$
On-device handled
71%
never left device
Avg latency
2.9s
msSum ÷ attempts
Top accounts by scans
#4471612
#1185410
#2030280
#0907150
#4471 flagged for review · tap to inspect
Allowance usage
Starter (20/mo) — at limit22%
Plus (40/mo) — avg used61%
Pro (150/mo) — avg used38%
Accounts at allowance limit3
Entitlements · allowance vs purchased credits
scan_entitlements
Monthly plan allowance refreshes each cycle; purchased top-up credits never expire and are spent only after the allowance runs out.
AcctPlanAllowance this cycleCreditsLeftStatus
#2110Pro90/150+400460Healthy
#2098Pro61/150+312401Healthy
#2052Plus12/40+150178Healthy
#2087Plus22/40+4866Healthy
#2071Plus38/4002Low
#2065Starter20/2000Upsell
#4471Plus150/4000Over
Tap a row to comp credits, reset the cycle, or nudge an upsell.2 low · 1 upsell · 1 flagged
Paystack is in test mode. CAC registration is still pending, so these are sandbox transactions — the integration, webhooks and flows are live and correct, but no real money has moved. Figures flip to production the day CAC clears. Safe to demo.
MRR
₦22.6K
11 active subs · ARR ₦271K
Top-ups · 30d
₦70K
22 packs · one-time
Collected · 30d
₦128K
subs + top-ups · sandbox
Failed · 30d
3
1 retrying · 2 recovered
Subscriptions by plan
Plus · 9 subs₦14.3K/mo
4 monthly · 5 annual
Pro · 2 subs₦8.3K/mo
1 monthly · 1 annual
Annual mix · ARPU55% · ₦2,053
Top-up revenue · 30d
50 scans12 · ₦18K
150 scans8 · ₦32K
400 scans2 · ₦20K
Attach rate · paid accounts31%
Recent transactions
paystack_transactions
#2110Pro · annual₦40,000Success2d ago
#2071Top-up · 150 scans₦4,000Success6h ago
#2098Pro · monthly₦5,000Success5h ago
#4471Top-up · 400 scans₦10,000Success1d ago
#2052Plus · monthly₦2,000Failed3h ago
#2044Plus · monthly₦2,000Refunded4d ago
Tap a row to inspect the Paystack reference, channel, and issue a refund or retry. Card numbers are tokenised — full PANs never reach Riffl.
Dunning · failed charges
Smart retries on the Paystack schedule — day 1, 3, 5, then downgrade.
#2052 · ₦2,000 Plus
Insufficient funds · retry 2 of 3 tomorrow
Recovered this month2 of 4 · 50%
Webhook health
Healthy
Events received · 24h142
Processed OK142 · 100%
Signature failures0
Last event4m ago · charge.success
Endpoint verifies the x-paystack-signature HMAC before acting. Unverified posts are dropped.
Total signups
—
This week
—
This month
—
Told us interests
—
By device
Loading…
Most wanted
Loading…
Recent signups
Loading…
This list is token-gated — only an operator holding the ops token can load it. Export CSV downloads every signup (email · source · device · interests · date) so you can import them into your invite/email tool.
COMING SOON
No hosted-backup service yet
Today backup is an on-device encrypted file the user exports themselves — there's no server-side hosted backup to report storage, restores or integrity checks on. This panel activates if and when hosted backup ships.
Zero-knowledge by design. Whenever hosted backup ships, files are encrypted on-device before upload — this console would only ever see size, count and integrity status, never the contents.
Unread
5
This week
12
Resolved
18
Top topic
Bug
5 of 12
Inbox
contact_messages
Tunde A. Feature
Can I export to CSV? I'd love to pull my spending…
2h
Ngozi E. Bug
The AI read got the date wrong on a GTBank screenshot…
5h
Bisi O. General
Just wanted to say the audit view is brilliant…
1d
Chidi N. Press
I write for a Lagos tech newsletter and would love…
2d
Amara K. Billing
When paid plans launch, will my early-access scans…
3d
Inbound from the website contact form. Replies go out via your own email client — no bulk-send integration needed.
OA
Olamide AgboolaOwner
olamide@riffl.app · Lagos, Nigeria
Sign out
Profile
Full name
Email
Timezone
Security
Password
Changed 3 weeks ago
Two-factor authentication On
Authenticator app
Passkey
Sign in without a password
Active sessions
MacBook · Chrome · this device
Lagos, NG · active now
iPhone · Riffl Ops
Lagos, NG · 2h ago
Windows · Edge
Abuja, NG · 5 days ago
Recent sign-ins
MacBook · Chromenow · Lagos
iPhone · Ops app2h · Lagos
Windows · Edge5d · Abuja
Your recent actions
Suspended scans · #4471
21m ago
Sent 142 early-access invites
Today, 09:12
Retried charge · #3390
Yesterday
Signed in from a new device
5 days ago
Riffl
OPS CONSOLE
Owner sign-in
Restricted to the account owner
Email
Password
Enter your email and password.
or
Two-factor code
Enter the 6-digit code from your authenticator app
Enter the 6-digit code.
Operational data only · encrypted user data is never accessible here