Andrew C Wang's Blog

Data Ownership and Switching Costs

Edit History

I’ve been using Beli, a restaurant review app that helps rank restaurants, over Google Maps, but I maintain reviews on both apps. The problem is Beli might die as a startup one day, but Google Maps doesn’t have the social discovery and organization of Beli, so I like Beli’s app but use Google Maps as my data backup. The other issue: on Beli, it took me two hours to transfer my Google Maps reviews including notes and photos.

The reason Google Maps has a stranglehold specifically on reviews is because of data. Not just technological advantage of map data but more importantly their large user base and large, proprietary user generated reviews that’s valuable to go through. Beli’s social aspect and initial niche of NYC catapulted them quickly. It helps that what initially led users in was the simple ranking system. It shouldn’t feel that innovative, but there were really only 2-3 other companies with business map reviews: Yelp, Google, and Apple. What made it hard to enter as a competitor was the customer review data: without it, it felt like no one would bother reading your review aggregator site since it wasn’t saturated enough.

This is basic supply side microeconomics: a high switching cost (getting data out if you even can) and thus blocking competitors from entering. The other issue is data ownership: I want to be able to take my data wherever I go; furthermore, I’d like to be able to analyze my data, keep it organized the way I want to on my computer, or even make my own app based on my data (like a Halal Cart reviewer).

Though there are apps where, even if you owned the data it wouldn’t matter such as social-centric platforms — Facebook, Duolingo, video games, Partiful, dating apps — there are many apps where the default is to assume, even with social centric or scalability that there’s no need to have users’ data be exportable. From a technical perspective, most users don’t seem to need or care about it. From a business perspective, you’d want to trap users in, and owning that user’s data is one way of keeping someone subscribed. However, sometimes, that makes a poor ecosystem; imagine if calendar apps trapped you in? Companies like Calendly wouldn’t exist if we were all stuck on Google Calendar waiting a decade before scheduling became a feature. Because of the data portability aspect of calendars, there are not only tons of calendar apps but multiple apps can take advantage of CalDav servers like Mom apps for scheduling their baby routines.

Today, data portability is a second thought for businesses, and rightly so. But the downside is lower competition, preventing ecosystems from developing based on certain data (e.g. calendar data), and preventing personal usage of that data that could be cross-analyzed with other data that the user has. The other reason exporting data is not more common is partly technical, and not on one business end: it’s not that consumers should know how to use Claude Code or even know what to do with their data after exporting, but that many apps wouldn’t know how to import the data. Thankfully with standardization, calendars have a standardized file format. With the advent of Claude Code, importing other apps’ data should no longer be a problem: simply have a coding agent analyze the data that was exported and figure out how to import it into your app.

I’d like to flip the script: what if everyone owned a coding agent and their data? I think more competition could start but also more personal analysis could happen. The practical aspect of this is data ownership of personal health records. Thankfully, EHRs usually allow you to download most of your health data, but transferring it is quite difficult. Uploading it to an app would be non-existent.

As a programmer, I love owning my data. I can code up apps that are personal to my taste using data from previously used apps. I can analyze a bunch of data at the same time e.g. downloading message data and searching through it (because iMessage sucks). But perhaps more importantly: what if I could not only own my data but keep it private?

I’ve been exploring Neon’s open source Postgres driver. It’s awesome that the non-cloud functionality of their business are open source. I want to take advantage of the technology to start a privacy and data ownership centric movement of consumer app development: instead of building a Postgres database for all your users, a user could simply provide a database instead of a username/password. The user not only owns their data (it’s their database), but they carry a minimal cost as Neon Postgres is practically serverless. To take it a step further, with app/web development being so cheap and fast now with coding agents, what if the full compute stack was owned by users by copying existing websites and making it open source (with some maintainers for continuous development)? In my blog “Mom and Pop Shops are Life and Blood of America”, there are some things that truly don’t need a lot of maintenance. Without ambition, many apps could survive for a long time with minimal updates. If more non-social centric apps like my gym tracker app were copied, we’d be expanding potential competition. One might criticize that without money flowing in, competition wouldn’t bother innovating due to a lack of sufficient profit (or in other words sufficient motivation). On the flip side, what if all the people who use a technology were simply adding on personal features. Though competition is lower, personalization is higher which, in effect, is the same desired result in terms of innovation.

Fundamentally, when more business barriers are broken down, more competition can happen. However, it does disperse energy and make innovation tougher if there isn’t enough profit for large problems to be challenged. For startup founders, of course I think the best businesses are those with some kind of scale factor that compounds. However, from a consumer perspective, certain apps could certainly give power back to users and thus increase an ecosystem’s competitive landscape.