Tarsi's Pricing, Explained: From $4.99 Paid App to Free + Pro
October 9, 2026 · 1225 words
| Item | Detail |
|---|---|
| What it is | Offline-first budget tracker for iPhone, Android and the web |
| Builder | Bryl Lim, solo (built it as a demo for a university talk on vibe coding) |
| AI tool | Codex, on top of a React Native template |
| Stack | React Native; core app has no database, login or server; optional cloud sync and AI features run on servers |
| Time to launch | First version in one weekend |
| Revenue | $20K in its first month across iOS and Android (self-reported, May 2026) |
| Source | Tap & Swipe, May 23, 2026 |

Tarsi is a budget app that Bryl Lim vibe-coded in a weekend with Codex, OpenAI's coding agent. It launched as a $4.99 paid app and, by his account on the Tap & Swipe podcast, made $20K in its first month.
Today Tarsi is free to download, with a Pro subscription, a lifetime option and a cloud add-on. That switch is what this post is about.
The one point to take away: Tarsi's pricing moved from "pay once to get in" to "free to start, pay to go further", and early buyers kept what they paid for.
Then: $4.99 upfront, no ads, no subscription
Tarsi started as a demo. Bryl built it for a university talk on vibe coding. He already had an Apple developer account, so he published it.
The first version took one weekend. He used Codex on a React Native template. React Native lets one codebase run on both iPhone and Android.
The core app was offline-first. That means it works without internet and keeps your data on the phone. No database, no login, no server to pay for.
At launch, per the podcast:
- iOS: $4.99, paid upfront.
- Android: listed as $2 cheaper.
- Extras: optional in-app subscriptions for cloud sync, bill splitting and AI features, not advertised on the store listing.
The episode reports about $350 a day on average, with spikes to $800, and 80–90 downloads a day. Roughly 75% of revenue came from iOS. These figures are self-reported and cover the old paid model only; current revenue is not disclosed.
Distribution was cheap too. There were no paid ads. A public Facebook group, linked from the app's settings, did the work: members' posts show up for their friends. An Android beta waitlist drew 900 sign-ups, and some testers bought the app before launch.
Now: free, Pro and Cloud

The pricing page on tarsi.cloud now says Tarsi is free on iPhone, Android and the web. Prices are shown in Philippine pesos there. The US App Store lists the dollar prices.
| Tier | Philippines (tarsi.cloud) | US App Store | What you get |
|---|---|---|---|
| Free | ₱0 | $0 | 2 accounts, 1 category budget, this month and last month of history, no account needed |
| Pro Monthly | ₱199/mo | $2.99/mo | All Pro features plus Tarsi Cloud |
| Pro Yearly | ₱1,999/yr ("Save 16%") | $29.99/yr | All Pro features plus Tarsi Cloud |
| Pro Lifetime | ₱1,999 once | $29.99 once | All Pro features on your device, no Cloud |
| Cloud add-on | ₱149/mo or ₱1,290/yr | $1.99/mo or $19.99/yr | Sync across devices and web, AI chat, statement import, shared groups |
Pro unlocks unlimited accounts and full history, budgets for every category, recurring bills, forecasts, goals and debts, reports, receipt scanning and more.
Trial and refunds. The page says there's "no trial timer", because the free tier never expires. No refund policy is stated. All purchases go through the App Store or Google Play, and you cancel from your store account.
Early buyers. The page has a line for people who paid before the change: "Bought Tarsi before it went free? You keep Pro for life."
When exactly Tarsi went free is not disclosed.
What the price signals
The free tier is the new ad. A $4.99 price filters out casual browsers. A free download with a tight limit (two accounts, one budget) lets people try first, then hit a wall that makes sense.
Lifetime equals one year. Pro Lifetime and Pro Yearly cost the same, ₱1,999 or $29.99. The difference is Cloud. Yearly includes it. Lifetime doesn't. So the "forever" deal is really a device-only deal, and Cloud is where the recurring money lives.
Cloud is priced as a separate cost. Sync and AI chat need servers, and servers cost money every month. The core app doesn't. Charging monthly only for the part that has monthly costs is a clean rule.
Local prices, local trust. The homepage leads with Philippine credentials, like "#1 finance app" in the Philippines. Showing pesos first fits a home market.
Grandfathering keeps goodwill. Honoring old purchases avoids the angry reviews that often follow a switch to subscriptions.
What to copy
- Charge only recurring for recurring costs. Offline features can be one-time. Sync and AI are monthly.
- Make the free limit obvious. Two accounts and one budget is easy to understand.
- Price lifetime close to one year. It anchors the yearly plan and keeps Cloud as the upsell.
- Grandfather early buyers in writing. Put it on the pricing page.
- Show prices in your main market's currency. Let the stores convert for everyone else.
If you vibe-code this
This app type is a personal finance app with in-app purchases and optional cloud sync. Here are the checks I'd run on any app like it:
- Check entitlements on the server before syncing. A local "isPro" flag is easy to flip.
- Store tokens in secure storage, not plain storage. See React Native secure storage.
- Check ownership on shared groups. A guessable group ID must not expose someone's spending. See IDOR authorization.
- Treat imported statements as untrusted input to AI chat. See prompt injection.
- Keep API keys out of the app bundle. See environment variables.
A small server-side gate before accepting a sync:
// Only sync for users whose Cloud entitlement the server has verified
const ent = await getVerifiedEntitlement(userId); // from your store-receipt backend
if (!ent?.cloudActive) {
return res.status(403).json({ error: "Cloud is not active" });
}
Building a finance app with Codex? Email [email protected] for a vibe-code security audit.
Key takeaway
Tarsi proved people would pay $4.99 for a weekend-built, Codex-made budget app. Its new pricing keeps the core free, sells Pro once or yearly, and charges monthly only for Cloud, the part that costs money to run.
More case studies: Vibe-coded apps making money · Security basics: Vibe coding security guide