A Year on GrapheneOS: Switching from iPhone to Pixel 9 Pro

May 17, 2026·
David Bösiger
David Bösiger
· 5 min read
blog

Last April my iPhone 11 Pro was getting old and I was looking for a replacement. I thought it would be fun to try GrapheneOS - something new, and the data-ownership angle lined up with where I was already heading. A year later I’m still on it.

I went with the Pixel 9 Pro. Honestly, the Pro version wasn’t strictly necessary - the regular 9 would have been fine - but the Pro is still cheaper than a comparable iPhone.

Installation

Installation is the easiest part. GrapheneOS has a web installer you run from your browser - even non-technical people can manage it. No flashing tools, no custom recovery, just connect the phone via USB and click through.

What also matters: I get regular security updates. That’s a big deal. Some alternatives (eOS, for example) lag significantly on patches. Pixel hardware support is the main constraint - GrapheneOS only works on Pixels - but on a Pixel it works very well.

The App Problem

The first question on any de-Googled phone: how do you actually install apps?

I use Aurora Store - a proxy that downloads APKs from the Play Store anonymously. It’s a bit finicky and there are occasional security concerns, but the Play Store itself isn’t exactly a security gold standard either. For apps that are available there, I prefer F-Droid.

I also use Sandboxed Google Play. A lot of apps simply don’t work without it, even if you have no Google account. It runs in its own sandbox with no special privileges - one of GrapheneOS’s better tricks.

Self-Hosting: The Real Foundation

The phone is only half the story. What makes the switch viable is having my own backend for the things Google/Apple normally do for you.

  • Immich for photos - the migration was actually painless, and I prefer it to either Google Photos or iCloud now.
  • Nextcloud for files, calendar sync (with Etar as the calendar app), and contacts.
  • My own mail server with Thunderbird as the email app on the phone.
  • Vikunja for todos.
  • Vaultwarden (self-hosted Bitwarden) for passwords.
  • Jellyfin for media.
  • AdGuard Home as my Private DNS - blocks a lot of tracking at the network level.

Contacts I migrated manually. A minor pain, but a one-time thing.

For server access I use Tailscale and Termux.

Replacing the Big Apps

  • Music: I used Spotify for years. Now I run Tempo as the app and self-host with the Lidarr stack. Better in almost every way once it’s set up.
  • YouTube: NewPipe - no ads, no account, downloads work.
  • Feeds/news: FeedFlow.
  • Maps: Organic Maps. Not as good as Google Maps, but for what I do it’s good enough.
  • Browser: Brave.
  • Chat: mostly Element.
  • 2FA: Aegis.
  • Personal notifications: ntfy (self-hosted).
  • A couple of fun apps: Chess.com and a sudoku app.

Banking and Swiss-Specific Apps

This is where it gets less clean. Banking apps are the hardest category on a hardened OS.

PostFinance didn’t work for me for months. It would have worked if I disabled some of GrapheneOS’s security features - but that’s exactly why I use GrapheneOS, so I left them on. It eventually started working again.

Twint works fine. Sometimes I have to reload things because of AdGuard, but it’s reliable. In Switzerland that’s a real alternative to credit cards, which I avoid because of the tracking baked into the Google/Apple Pay flow (iOS handles this better, to be fair).

SBB Preview for train tickets has been a journey. Getting a GPS fix was sometimes tricky - I once had to switch to Apple’s location servers for it to work. Mostly it’s fine. They’ve now switched to EasyRide (Be-In/Be-Out) with Bluetooth tracking at stations, which actually works better. I’m not thrilled about being tracked all the time, but it’s cheaper to travel that way for now. If I move to a GA at some point, I’ll lose that app entirely.

For uni I use Microsoft Office. Works fine, even with AdGuard blocking a lot of telemetry in the background.

GrapheneOS Features I Actually Use

  • Per-app network toggle. The killer feature. Block any app from the internet entirely with one switch. Half the apps that demand connectivity don’t actually need it.
  • Storage scopes. Apps see only the files I let them see, not my whole storage. This is the default.
  • GrapheneOS’s own location servers instead of Google’s.
  • Sandboxed Google Play, as mentioned.

I don’t use user profiles. Apps are already sandboxed on GrapheneOS, so I haven’t felt the need to layer profiles on top.

Push Notifications

A real compromise. Push notifications mostly still flow through Google’s FCM - which is why they’re sometimes delayed. For most apps there’s just no way around it. ntfy is great for things I control, but for the rest I take the delay.

Etar notifications, for example, sometimes show up late. Fine for me - I check the calendar in the morning anyway.

Backups

GrapheneOS has a built-in backup feature that I point at Nextcloud (apps and settings). The data itself doesn’t need a separate phone backup - photos are already in Immich, files in Nextcloud, passwords in Vaultwarden. The only gap is SMS, which I don’t really use.

What Still Annoys Me

  • Photos taken directly inside Element don’t sync to Immich for some reason. I poked at it briefly but didn’t dig deep - I mostly shoot with the native camera app, where everything works fine. Anything else (WhatsApp, native camera) syncs without issues.
  • Aurora Store occasionally hangs or needs a re-login.
  • Brave needed some fiddling to get Vaultwarden autofill working.

Nothing show-stopping. Worth flagging because the lifestyle isn’t free.

Online Footprint

This goes beyond the phone, but it’s the same thread: no Instagram, no Reddit anymore, no Facebook. The phone setup is consistent with the direction.

Who Is This For?

Not for everyone. If your life is tightly integrated with Google - Drive, Photos, Docs, Family Sharing - and you don’t want to give up your Google account, the switch is hard. Sandboxed Google Play helps, but doesn’t undo that dependency.

For me, the main selling point was not needing an account on my phone. No Google, no Apple. Just my phone, my data, my servers. The extra security features are a bonus.

A year in, no regrets. I’d do it again - and the install is easy enough that you could try it on a spare Pixel without much commitment.