← Hub

Own Your Stack: Why I Rebuilt on a Repo I Control

The $47 monthly Webflow bill shouldn't have bothered me. It was a rounding error compared to what I was spending on other tools. But something about that particular charge made me stop and actually look at my bank statement. $280 per month across platforms I barely controlled. ConvertKit for email. Webflow for the site. Google Analytics 360 because the free version didn't have the segmentation I needed. A dozen other subscriptions that had crept up like ivy on a house.

Then the algorithm change hit. Forty percent of my organic reach vanished overnight. No warning. No explanation. Just a terse email about "improving user experience." I realized I'd spent three years building someone else's empire while my own foundation remained rented space.

The Rent-Seeking Trap We All Fall Into

We tell ourselves we're being smart. "Focus on your product, not your tools." "Move fast and worry about infrastructure later." The startup wisdom that sounds brilliant until you're three years in, paying hundreds monthly for the privilege of not owning your own foundation.

The seduction is real. Drag-and-drop website builders promise you'll have a professional site in hours. Email platforms handle deliverability so you don't have to think about DKIM records. Analytics platforms crunch numbers while you sleep. All for the price of perpetual dependence.

I bought into this completely. Why spend weeks learning Astro when Webflow could have me live in an afternoon? Why configure my own email server when ConvertKit handled everything? The opportunity cost seemed obvious.

The hidden cost wasn't obvious until it was too late. Every month, the rent was due. Every feature I needed required upgrading to a higher tier. Every customization I wanted hit a platform wall. I wasn't building a business; I was building a subscription portfolio.

The Hidden Costs of Rented Platforms

Financial Bleeding

Let me show you the numbers. In January 2023, I was paying:

  • Webflow: $47/month for the CMS plan
  • ConvertKit: $79/month for 15k subscribers
  • Google Analytics 360: $150/month for proper segmentation
  • Zapier: $49/month for workflow automation
  • Calendly: $15/month for scheduling
  • Loom: $12/month for video hosting
  • Various other tools: $38/month

Total: $390/month. Nearly $5,000 per year for tools I didn't own.

The subscription creep happened gradually. Webflow started at $12/month. ConvertKit was $29 when I had 2,000 subscribers. Each upgrade felt justified in isolation. But compound those increases over three years, and you're funding someone else's growth.

The psychological trap is the exit tax. By year two, I had 200+ blog posts in Webflow's CMS, 15,000 subscribers in ConvertKit's system, and custom workflows connecting everything. The switching cost felt substantial. So I stayed, paying monthly rent on my own content.

Control Illusion

The breaking point came when I tried to export my Webflow site. Simple request: give me the HTML and CSS for the site I built. What I got was a mess of auto-generated class names, inline styles, and JavaScript dependencies that made the code nearly unusable.

Webflow's export feature exists to check a compliance box, not to give you actual ownership. The exported code was technically complete but practically worthless. Class names like .w-layout-grid and .w-container meant nothing without Webflow's framework. Custom interactions required their proprietary JavaScript. I owned the content but not the container.

Algorithm dependency hit harder. When the platform changed how they processed images, my site's loading speed suffered. When they updated their CMS API, my integrations broke. Each change required waiting for their fix, not implementing my own.

The feature wait was constant. I needed custom form validation for 18 months before Webflow added it. I wanted to modify the RSS feed structure for over a year. Basic functionality that would take hours to implement in owned code required waiting for platform roadmaps I had no influence over.

Compounding Leverage Loss

Here's the part that really stung: every blog post I wrote made Webflow more valuable, not me. My SEO efforts improved their domain authority. My content attracted users to their platform. I was building their moat while paying them for the privilege.

No API access to my own data meant I couldn't build custom analytics or automate content workflows. Want to programmatically update meta descriptions across 200 posts? Sorry, that requires manual clicking through their interface. Want to backup your content automatically? Hope their export feature works when you need it.

Limited customization ability meant accepting their design constraints as permanent limitations. Their grid system, their animation options, their performance characteristics. I could customize within their sandbox but never escape it.

The Breaking Point: What Actually Made Me Move

The specific incident was almost comically small. Webflow moved custom code injection from their $47/month plan to their $74/month plan. A 57% price increase for functionality I was already using. Not new features—existing functionality behind a higher paywall.

I'd been a customer for three years. Paid them over $1,500. Built my entire online presence on their platform. Their response to loyalty was extracting more rent for the same service.

That night, I opened a text editor and wrote my first HTML in five years. It felt like stretching muscles I'd forgotten I had. By morning, I had a basic blog post template that loaded faster than my Webflow site. No monthly fee required.

The BUILD movement clicked for me in that moment. "I think, therefore I build" isn't just about products—it's about infrastructure. Every tool you don't own is a tool that owns you.

The Migration Reality Check

What Actually Broke (Honest Assessment)

I'm not going to romanticize this process. The migration was harder than I expected and took longer than I planned.

Contact forms broke completely. Webflow's form handling was seamless because they controlled the entire stack. Moving to static HTML meant setting up my own form processing, configuring SMTP, and handling spam protection. What was invisible became three days of work.

SEO redirects were a nightmare. Webflow's URL structure used their conventions. My new Astro site used mine. Mapping 200+ URLs required building a custom redirect system and carefully monitoring search rankings during the transition.

I lost three weeks of momentum during the migration. Instead of writing content or building features, I was debugging CSS conflicts and configuring deployment pipelines. The opportunity cost was real and measurable.

The Learning Curve Tax

Astro setup took two days of configuration. Not because Astro is complex, but because I'd forgotten how to think about build systems and deployment pipelines. Webflow had abstracted away concepts I needed to understand again.

GitHub Actions debugging consumed another full day. Setting up automatic deployments from my repository to Netlify required learning YAML syntax and understanding CI/CD concepts that hosting platforms handle invisibly.

Content migration scripts became a weekend project that stretched into a week-long effort. Exporting from Webflow, cleaning the markup, converting to Markdown, and preserving image relationships required custom tooling and careful testing.

The learning curve tax was higher than expected but front-loaded. Each concept I relearned became permanently useful, unlike platform-specific knowledge that becomes worthless when you switch tools.

Unexpected Wins

Site speed improved significantly. Webflow sites loaded in 3.2 seconds on mobile. My Astro site loads in 0.8 seconds. The difference came from controlling every asset, optimizing every image, and eliminating framework overhead I didn't need.

Customization freedom was intoxicating after three years of constraints. Want a custom reading progress bar? Fifteen minutes of JavaScript. Need dynamic content filtering? Build exactly what you want. No checking if the platform supports your vision.

Version control changed everything. Every change tracked, every deployment reversible. Break something? Git revert in seconds. Want to try experimental features? Branch and merge when ready. Software development practices applied to content management.

The Ownership Dividend (3 Months Later)

Financial

Monthly costs dropped from $280 to $12. Netlify hosting for the static site. Domain registration. Everything else runs on infrastructure I control.

The payback calculation assumes I value my migration time at zero, which isn't realistic. But the financial trajectory is clear: owned infrastructure gets cheaper over time while rented platforms get more expensive.

More importantly, the cost structure changed. Fixed infrastructure costs instead of variable subscription fees. Predictable expenses instead of platform pricing changes. Financial independence instead of perpetual dependency.

Control

Custom analytics took four hours to build versus six months waiting for platform features. Simple JavaScript tracking exactly what I needed, stored in my own database, accessible through my own dashboard.

A/B testing without platform limitations meant testing anything I wanted. Page layouts, content strategies, user flows. No waiting for platform support or paying for premium features.

Direct database access to all my content enabled automation I couldn't achieve before. Bulk content updates, cross-referencing systems, custom search functionality. My content became truly mine.

Leverage Compounding

Now my content builds MY moat. Every blog post improves my domain authority. Every optimization benefits my performance metrics. Every user interaction generates data I own and control.

Custom integrations became possible overnight. Connect my site to any API, process data however I want, build features that serve my specific needs. No platform roadmap constraints or integration marketplace limitations.

Future-proofing against platform changes means never again having my business disrupted by external decisions. Platforms will change their terms, raise prices, and sunset features. My owned infrastructure adapts on my timeline.

The Trade-offs Nobody Talks About

Honest Cons of Ownership

You become responsible for security updates. No platform team maintaining your infrastructure means you maintain your infrastructure. Software updates, security patches, and monitoring become your job.

No customer support to blame when things break. Platform outages were frustrating but not your fault. When your deployment pipeline fails at 2 AM, you're the customer support team.

Higher cognitive load for non-technical decisions. Platform constraints simplified choices by limiting options. Full control means making more decisions about implementation details you might prefer to ignore.

Why I'd Still Choose Ownership

Control compounds over time. Early ownership challenges become routine maintenance. Early learning curves become permanent skills. Early customizations become competitive advantages.

Skills transfer to other projects. Understanding deployment pipelines helps with any web project. Knowing performance optimization improves everything you build. Platform-specific knowledge dies with the platform.

Alignment with BUILD movement principles means building assets instead of renting capabilities. Every owned tool increases your independence and reduces external dependencies.

The BUILD Movement Applied to Infrastructure

Your infrastructure stack is part of your product, not separate from it. Site performance affects user experience. Content flexibility enables better marketing. Integration capabilities determine what features you can build.

Every rented service creates dependency risk. Platforms change pricing, alter terms, or disappear entirely. Each dependency multiplies the chances of external disruption to your business.

The build versus buy framework needs updating for infrastructure decisions:

Build when:

  • You need long-term control
  • Customization requirements exceed platform capabilities
  • Monthly costs will exceed development time within reasonable timeframes
  • The skill development benefits your broader goals

Buy when:

  • You need temporary validation tools
  • Compliance requirements exceed your expertise
  • Integration complexity outweighs customization benefits
  • Focus on core business provides higher ROI

Tactical: How to Actually Do This

The Migration Strategy

Audit your current platform dependencies by business impact and migration difficulty. Email lists are high impact but easy to export. Custom integrations are high impact but difficult to rebuild. Start with high-impact, low-difficulty migrations.

Prioritize platforms where you're paying for basic functionality you could implement yourself. Website hosting, simple analytics, and basic automation workflows offer good migration candidates.

Use a parallel build approach to avoid downtime. Build the new system while the old system continues running. Switch over only when the new system matches or exceeds current functionality.

Tool Recommendations

Static site generators that don't require extensive configuration: Astro for flexibility, Next.js for React familiarity, or Hugo for simplicity. Each offers different trade-offs between customization and complexity.

Hosting that scales without breaking budgets: Netlify for simplicity, Vercel for performance, or basic VPS hosting for maximum control. Avoid platforms that charge per request or bandwidth.

Essential services worth paying for: domain registration, SSL certificates, and email delivery. Build custom analytics but pay for DNS management. Own your content but rent commodity infrastructure.

Timeline Expectations

Realistic migration timeline: 4-6 weeks for basic functionality replacement. Factor in learning curves if you're new to development tools. Plan for debugging time and unexpected integration challenges.

Consider extending your initial time estimate. Infrastructure migrations often take longer than expected because you discover requirements only during implementation. Buffer time prevents rushed decisions.

Test thoroughly before switching over. Run both systems in parallel until you're confident the new system handles all edge cases. Users shouldn't notice the migration happened.

When Platform Dependence Makes Sense

Early validation stages benefit from platform speed. Building custom infrastructure for an unvalidated idea wastes time better spent on customer development. Use platforms for rapid prototyping, then migrate successful concepts to owned infrastructure.

Non-core business functions may warrant platform dependence. Payment processing, legal compliance, and specialized analytics might exceed your development capacity. Focus ownership efforts on your core value proposition.

Compliance-heavy requirements often require platform expertise. Financial services, healthcare, and legal industries have regulatory requirements that specialized platforms handle better than custom development.

Temporary versus permanent platform decisions should be explicit. Choose platforms with clear migration paths for temporary use. Accept platform lock-in only for permanent decisions where switching costs justify the convenience benefits.

The Long Game: Building Your Own Moat

Owned infrastructure becomes competitive advantage through compound customization. Each feature you build specifically for your needs creates differentiation that platforms can't replicate. Your infrastructure becomes part of your unique value proposition.

Platform independence provides business resilience against external changes. Economic downturns affect platform pricing. Regulatory changes affect platform operations. Owned infrastructure insulates your business from external volatility.

The builder's mindset treats tools as investments rather than expenses. Platform subscriptions are pure costs that reset monthly. Infrastructure development builds lasting assets that appreciate through use and customization.

Your owned infrastructure becomes the foundation for future opportunities. APIs you control enable partnerships. Data you own enables insights. Flexibility you build enables rapid iteration.

Start with one platform dependency. Find the exit door. Calculate the true cost of perpetual rent versus ownership investment. Your future self—the one not paying monthly subscriptions for basic functionality—will thank you.