A structured review of the onboarding, paywall, pricing and server infrastructure behind Goto VPN's iOS app, with findings ranked by impact and a phased plan to fix them.
Goto VPN is bringing in a healthy stream of new installs, but the app currently gives almost nobody a reason, or a working path, to become a paying user. The gap is not demand, it's the product experience between "download" and "pay."
There is no onboarding, no guest access, and no visible purchase option. New users are pushed straight to a login wall with nothing explaining what they'd be signing up for.
Nearly all servers route through China regardless of the country label shown, and only one of four advertised connection modes is actually backed by a live server.
Given daily traffic is already live, the phase order below is built to stop the bleeding first, then rebuild the funnel, then invest in infrastructure.
Changes to what's already built: visibility, wording and screen order. No new infrastructure required.
Structural changes to how a new user moves through the app, built on app logic and StoreKit integration.
Server deployment. The fixes above will stall without this, the app needs something real to sell.
Ordered roughly by where a user hits them, from opening the app for the first time through to the settings menu.
The app opens directly to the login screen. There is nothing explaining what Goto VPN does before a new user is asked to create an account.
Add a short 2 to 3 slide onboarding covering speed, security and server coverage, ending in guest access rather than a login wall.
Users must sign up and log in before they can do anything in the app, which is almost certainly where most of the 14,000 installs are being lost.
Let users continue as a guest straight after onboarding, connected to one limited server. Move login and signup into the account section for later, optional use.
The only way to upgrade is to open the side menu, go to My Account, then tap Upgrade Plan. There is no prompt to purchase anywhere in the main flow.
Add a persistent upgrade banner on the home screen, and send any tap on a locked server straight to the paywall.
The login screen reads "Log in to activate your trial." The trial starts on account creation, with no card and no Apple purchase involved, so there's no real commitment and no revenue tracking through Apple.
Move the free trial inside the Apple StoreKit subscription flow: "7-day free trial, then Rs 1,300/month." The trial only starts once the user subscribes through Apple.
The screen where a user actually decides to pay shows four plans and no mention of a free trial. The strongest purchase incentive is missing exactly where it matters most.
Add a clear "Start your 7-day free trial" line to the pricing screen, tied to the plan it applies to.
Monthly (Rs 1,300) is marked "Save 17%" and Yearly (Rs 9,900) is marked "Save 8%," and neither matches what those plans actually save against the weekly price.
Recalculate every badge against the true monthly-equivalent cost. Incorrect savings claims also risk being flagged in App Store review.
The region list shows "Canada - CN," "Japan - CN" and "United States - CN." The labels suggest different countries, but every one of them routes through China, giving non-China users poor speed and a misleading experience.
Fast, Turbo, Stealth and Secure modes are all present in Settings and are backend-supported, but only VLESS is actually live. Selecting any other mode leads to a failed or dropped connection.
Deploy at least a small server set for each protocol (WireGuard, VLESS, OpenVPN) so every mode shown in the app genuinely works.
The home screen is a connect button, a timer and a region name. Nothing hints at server count, speed, or what a paid plan unlocks.
Add a banner promoting the upgrade (e.g. "Unlock 20+ servers"), plus a visible server count and connection-speed indicator.
Nothing nudges a guest or free user toward upgrading during normal use, no prompts, no limited-time offers.
Add contextual popups: e.g. when a guest taps a locked server ("Unlock 20+ servers"), or a limited-time offer after a few app opens.
Even for users who allow notifications, nothing brings them back. Anyone who downloads and forgets, or starts a trial and drifts away, churns silently.
Add a scheduled reminder sequence for users who've opted in:
A bright red "Delete Account" button sits above "Sign Out" in the account menu, an easy target for an accidental tap that costs a user.
Move account deletion into Settings behind a confirmation step, and keep Sign Out as the primary, more visible action.
A new user never sees the pricing screen unless they go looking for it. First impressions carry the most purchase intent, and right now they carry nothing.
Show the paywall once, right after onboarding or the start of guest mode, with the close button visible immediately, not delayed, to keep it inviting rather than forced.
Every day these issues stay open, a share of today's 100–200 new users leaves without ever seeing a reason to pay. Happy to walk through this list together and start with the quick wins.