Why I Switched From Supabase to Convex
Everything-as-code, automatic real-time sync, AI-friendly architecture, and genuinely fair pricing — a genuine account of why Convex changed how I build apps.
March 2026Jonas Rude Øvstaas
Finance student at BI Trondheim. Equity researcher at Bull Invest. Building ByggSmart.
Everything-as-code, automatic real-time sync, AI-friendly architecture, and genuinely fair pricing — a genuine account of why Convex changed how I build apps.
March 2026I'd been building Menu Mate on Supabase for months. Postgres underneath, real-time subscriptions bolted on, auth that mostly worked. It was fine — until it wasn't.
The moment I needed real-time data across multiple tables, things got painful. Subscriptions would silently drop. Row-level security policies turned into sprawling SQL that was impossible to debug. And every schema change meant writing a migration, testing it locally, deploying it, then praying.
I started looking for alternatives — not because Supabase is bad (it isn't), but because I needed something that matched how I actually think about building apps.
The first thing that clicked with Convex was the schema definition. Instead of writing SQL migrations, you define your schema in TypeScript:
defineTable({ name: v.string(), price: v.number() })
Change the schema, push it, done. No migration files. No rollback scripts. The schema is the source of truth, and it lives right next to your application code. Version control gives you the history.
Queries and mutations are also just TypeScript functions. There's no ORM layer, no query builder, no SQL strings. You write functions, export them, and call them from your frontend with full type safety end-to-end.
This was the biggest win. In Supabase, I had to set up channels, subscribe to specific tables, handle reconnection logic, and manage stale data. With Convex, every query is automatically real-time.
You write a query function. You call it from your React component with useQuery. When the underlying data changes, the component re-renders. That's it. No subscriptions to manage, no websocket configuration, no polling.
For Menu Mate — where restaurant menus and orders update constantly — this was transformative. I deleted hundreds of lines of subscription management code.
Here's something I didn't expect: Convex is dramatically easier to work with when using AI coding tools. Because everything is TypeScript with strong types, Claude and Copilot can reason about your entire backend. They can see your schema, your queries, your mutations — all in one language.
With Supabase, the AI had to context-switch between SQL, TypeScript, and RLS policies written in yet another SQL dialect. The error rate was noticeably higher.
Supabase charges by database size, bandwidth, and auth users — which means costs are unpredictable and scale in ways that are hard to forecast. Convex charges based on function calls and document bandwidth, which maps directly to how your app is actually used.
For a student project that might spike during demos or pitch events, this matters. I know what I'm paying for, and I can estimate costs before they hit.
It's not all perfect. Supabase's Postgres foundation means you get the entire SQL ecosystem — complex joins, full-text search, PostGIS. Convex is a document database, so you think differently about data modeling. The community is smaller. The dashboard is more minimal.
But for the kind of apps I build — real-time, collaborative, rapidly iterating — the tradeoffs are overwhelmingly worth it.
Switching from Supabase to Convex wasn't about one being "better" than the other. It was about finding the tool that matches how I work: fast iteration, type safety everywhere, and real-time by default. If you're building modern web apps and haven't tried Convex, give it a weekend. You might not go back.
Two years ago, the offshore wind industry was sounding alarm bells about a looming vessel shortage. Analysts warned there wouldn't be enough Wind Turbine Installation Vessels (WTIVs) to keep up with the project pipeline by 2028. IHS Markit concluded the fleet would "most certainly fail" to cover demand. Siemens Gamesa painted a picture of far too many wind farms competing for too few vessels.
Fast forward to early 2026, and the narrative has completely flipped. Instead of a vessel shortage, we're looking at potential overcapacity. The question isn't whether there are enough ships — it's whether there are enough projects to keep them busy.
As someone who has spent months researching Cadeler A/S for an investment pitch at Bull Invest, I want to walk through what happened, why 2028 looks rough, and why I believe the current pessimism is creating a buying opportunity.
The earlier vessel shortage forecasts weren't wrong about the fundamentals — they were wrong about execution. They assumed projects would actually get built on schedule. Instead, the industry experienced an unprecedented wave of cancellations and delays.
Ocean Wind 1 and 2 were cancelled outright with over $4 billion in impairments. Hornsea 4 was discontinued in May 2025, killing what Cadeler described as potentially one of the biggest contracts in company history. Atlantic Shores collapsed when Shell exited. Empire Wind's construction was paused with stop-work costs reportedly hitting $50 million per week.
Meanwhile, the vessel orderbook — contracted during the optimistic 2022-2023 period — kept delivering. Cadeler alone is scaling from 5 vessels to 12 by mid-2027. When you combine shrinking demand with expanding supply, you get the overcapacity problem the market is now pricing in.
The American offshore wind market deserves its own section because the collapse has been that dramatic. The US pipeline has shrunk by 55% in a single year, from 55.9 GW down to 25.4 GW. BloombergNEF slashed its US offshore forecast from 39 GW to just 6 GW by 2035 — an 85% reduction.
The Trump administration's policy actions have been devastating for the industry. A presidential memorandum withdrew the entire Outer Continental Shelf from wind energy leasing. Stop-work orders halted construction on multiple projects, including Revolution Wind — which was 87% complete with 58 of 65 turbines already installed. Interior Secretary Doug Burgum stated bluntly that there is no future for offshore wind projects under the current administration.
BP called the US market "fundamentally broken" before withdrawing entirely. Shell exited. Ørsted has recorded over $6 billion in impairments across its US portfolio.
For a company like Cadeler that deployed the Wind Pace specifically for US operations, this is a real headwind. But it also underscores why geographic diversification matters — a point I'll return to.
Europe presents a frustrating paradox. The political commitment is there — the January 2026 Hamburg Declaration saw 10 countries pledge €9.5 billion toward 100 GW of joint offshore wind projects. Germany targets 30 GW by 2030. The UK aims for 40-50 GW.
But the auction results tell a different story. Germany's August 2025 offshore wind auction attracted zero bids for 2.5 GW of capacity. Denmark's 2024 tender for over 3 GW received no bids either. The Netherlands' Nederwiek I-A tender had no applications until the government added €1.1 billion in additional support.
When auctions fail, projects that were supposed to be under construction in 2027-2028 simply never materialize. This is the primary mechanism creating the 2028 installation gap.
One thing I respect about Cadeler's leadership is their transparency about the challenge. CEO Mikkel Gleerup explicitly stated the company anticipates increased competition and potentially lower utilization in 2027 and 2028. During the Q3 2025 earnings call, management acknowledged a shift in project timelines with some projects moving to later years.
This kind of candor matters. The bull case for Cadeler doesn't require pretending 2028 will be smooth. It requires understanding that 2028 is a valley, not a cliff.
Gleerup positioned scale as the company's defensive advantage — being a large company that can spread risk across several vessels when the market weakens. And the numbers back this up: a €2.9 billion backlog (as of November 2025) with 78% at Final Investment Decision provides substantial visibility through 2026. The company has also signed new contracts targeting 2028 specifically, including a Preferred Supplier Agreement for foundation work commencing first half 2028 and a project worth €70-80 million starting March 2028.
While the US market imploded and European auctions stumbled, Cadeler has been quietly building an impressive UK portfolio. The company opened a permanent headquarters in Norwich in November 2025, and their disclosed East Anglia contracts alone exceed €560 million.
East Anglia TWO, their largest disclosed UK deal at €360-382 million, covers full-scope transportation and installation of 64 foundations and 64 turbines. East Anglia THREE adds another €100+ million for 95 turbines. Hornsea 3 represents a strategic breakthrough into foundation installation for what will become the world's largest single offshore wind farm. And Sofia keeps the Wind Peak busy through 2026.
With the UK's AR7 allocation round securing 8.4 GW — Europe's largest single procurement — there's a meaningful pipeline of projects that will require installation capacity through the late 2020s. East Anglia ONE North, Berwick Bank (potentially 4.1 GW), and future CfD rounds all represent additional opportunities where Cadeler's scale and established relationships give it a genuine edge.
Here's where I think the market is getting it wrong. The 2028 overcapacity concern is real but temporary. The projects aren't dead — they're delayed. The political commitments haven't wavered. And the structural demand drivers — decarbonization targets, energy security, falling technology costs — remain fully intact.
Industry consensus points to recovery from 2029 onwards. Global installations are projected to reach 28-30 GW annually by 2029 and potentially 55-66 GW by 2033. Germany alone has 15.5 GW expected to come online in 2030-2031, which would strain vessel availability all over again. The GWEC forecasts 28% compound annual growth through 2029.
When that demand returns, the companies that will capture it are the ones that survived the valley with their fleets, teams, and customer relationships intact. Cadeler, with the industry's largest fleet at 12 vessels, next-generation A-class capabilities for both XXL monopile foundations and 15MW+ turbines, and a diversified geographic presence across Europe, Asia, and the US, is uniquely positioned for that recovery.
For smaller operators or highly leveraged newbuild programs, the 2028 timing mismatch poses existential risk. For Cadeler, it's a period of tighter margins and higher competition — but one they have the balance sheet and backlog to weather.
Cadeler trades at roughly 6.6x trailing P/E with a 140% revenue CAGR over the past two years, expanding EBITDA margins approaching 65%, and a €2.9 billion backlog — while analysts maintain a consensus target implying 40%+ upside. The 2028 valley is creating a sentiment discount on a company with structural advantages that will matter enormously when the market recovers.
The offshore wind industry has a timing problem, not a demand problem. And for patient investors willing to look through a rough 2028, Cadeler offers one of the most compelling risk-reward setups in the renewable energy space.
Equity research and investment analysis
AI-powered building regulation assistant for Norway
FounderDescribe your renovation in plain Norwegian and get relevant TEK17 regulations back instantly. Hybrid retrieval with vector search, full-text search, and rule-based mapping — all fused via Reciprocal Rank Fusion.
National AI programming competition
ParticipantCompeted in Norway's national AI championship, building intelligent agents for real-time strategic challenges.
Student investment fund at BI Trondheim
AnalystConducting fundamental equity analysis, building 3-statement models with DCF valuation, presenting investment theses weekly.
International Baccalaureate Diploma
Sandefjord, NorwayTeam Leader — Managed Rosenborg E-Sport Academy
TrondheimBachelor of Business Administration
TrondheimAccounting Coordinator — Financial reporting & compliance
TrondheimRestaurant Manager — Peak season operations
HafsundEquity Analyst — Student investment fund
BI TrondheimI'm a Business Administration student at BI Trondheim with an obsession for agentic coding and AI-native development.
I believe in agent orchestration, setting up agent sessions, defining the architecture, then letting subagents ship while I deal with strategy.
Outside code and AI, I've built financial models from first principles, competed in equity research cases, and spoken publicly about the intersection of technology and traditional industries.
Always interested in discussing markets, products, or new opportunities.