The 3-Word Email That Killed MySpace: How Chris DeWolfe Ignored the Facebook Threat While His Engineers Begged to Rewrite β€” And Lost 100 Million Users in 2 Years
πŸ“‰Rise & FallAugust 16, 2026 at 8:29 AMΒ·9 min read

The 3-Word Email That Killed MySpace: How Chris DeWolfe Ignored the Facebook Threat While His Engineers Begged to Rewrite β€” And Lost 100 Million Users in 2 Years

In 2006, MySpace had 100 million users and Facebook had 12 million. By 2008, the war was over. The turning point? An email that said 'We're fine now.'

MySpaceRise & FallChris DeWolfeTom AndersonFacebookMark ZuckerbergColdFusionTechnical DebtSystem DesignWeb ArchitectureMySQLMemcachedCachingDatabase ArchitectureSocial MediaNews CorpPHPPerformancePage Load TimeInfrastructureScalingSamy WormXSSSecurityProfile CustomizationCDNShardingCorporate StrategyProduct ThinkingLeadershipTech IndustrySilicon Valley

The Email That Ended an Empire

It was April 2006. Chris DeWolfe, CEO of MySpace, sat in his office at the Fox Interactive Media headquarters in Beverly Hills, staring at an email from his VP of Engineering.

The subject line read: "Facebook migration plan β€” urgent."

The body was a 4-page technical document outlining how MySpace's entire codebase β€” a tangled mess of ColdFusion, Perl scripts, and inline SQL queries copied from StackOverflow before StackOverflow existed β€” needed to be rewritten from scratch. The infrastructure was collapsing under 100 million users. Pages took 8-12 seconds to load. The MySQL databases were sharded by hand across 200+ servers with no consistent schema. Every new feature broke three old ones.

The VP warned: "Facebook is rebuilt from scratch every 6 months. We haven't refactored in 3 years. If we don't act now, we'll lose."

DeWolfe's response was three words.

"We're fine now."

Two years later, MySpace had lost the social network war. Facebook surpassed them in April 2008 and never looked back. By 2011, MySpace was sold for $35 million β€” a 96% loss from News Corp's $580 million acquisition in 2005.

The story of how MySpace fell isn't about a single bad decision. It's about a CEO who confused current dominance with technical inevitability β€” and a codebase so broken that the company couldn't pivot even when they finally tried.

The House Built on ColdFusion

MySpace launched in August 2003, built in 10 days by a team of developers at eUniverse (later renamed Intermix Media). The tech stack was... creative:

  • ColdFusion for the frontend (a tag-based language that mixed HTML and logic in the same file)
  • Perl scripts for backend processing
  • MySQL databases sharded manually across dozens of servers
  • No ORM, no MVC, no architecture β€” just pages that directly queried databases with inline SQL

The code looked like this:

<cfquery name="getFriends" datasource="myspace_db_shard_47">
  SELECT * FROM friends WHERE user_id = #URL.user_id#
</cfquery>
<cfoutput query="getFriends">
  <a href="profile.cfm?id=#friend_id#">#friend_name#</a><br>
</cfoutput>

Every page was a monolithic .cfm file that mixed HTML, database queries, and business logic. There was no caching layer. No CDN. No separation of concerns.

And it worked β€” at first.

By 2005, MySpace had 25 million users. By mid-2006, they hit 100 million. They were adding 250,000 new users per day. Revenue hit $200 million. News Corp had just acquired them for $580 million. Chris DeWolfe and Tom Anderson were featured on magazine covers as the kings of Web 2.0.

But behind the scenes, the infrastructure was on fire.

The 12-Second Page Load

In early 2006, MySpace's engineering team started sounding alarms.

The average page load time was 8-12 seconds. On peak evenings, it hit 20 seconds. Users would click "Add Friend" and watch a loading spinner for 15 seconds before getting an error.

The root cause: no caching, no indexing, no query optimization.

Every time you loaded someone's profile, MySpace executed dozens of SQL queries across multiple database shards:

  • One query to fetch the user's profile data
  • One query to fetch their friends (often 1,000+ rows)
  • One query to fetch their latest blog posts
  • One query to fetch comments on those posts
  • One query to fetch their top 8 friends
  • One query to fetch the profile song from the music table
  • One query to fetch custom CSS (yes, users could inject custom CSS, which caused XSS nightmares)

And because the databases were manually sharded with no consistent schema, the queries couldn't use joins. Everything was loaded sequentially, one query at a time, with no connection pooling.

The engineers proposed a rewrite: migrate to a service-oriented architecture (SOA) with caching layers (Memcached), a proper ORM, and a CDN for static assets.

DeWolfe said no.

Why? "We're already winning. Why risk breaking what works?"

The Facebook Threat

Meanwhile, 2,000 miles away in Palo Alto, Mark Zuckerberg was doing the exact opposite.

Facebook launched in February 2004, a year after MySpace. By 2006, they had 12 million users β€” 10x smaller than MySpace.

But Facebook's codebase was completely different:

  • PHP (not ColdFusion) with a custom HipHop compiler that converted PHP to C++ for performance
  • Memcached everywhere β€” aggressive caching of queries, pages, and sessions
  • MySQL with read replicas and automated sharding via Vitess (later open-sourced)
  • A proper MVC framework β€” separation of models, views, and controllers
  • A/B testing infrastructure β€” every feature was tested on 1% of users before rollout

Facebook's page load times averaged 1.5 seconds. They could ship new features daily without breaking the site. They had a culture of "move fast and break things" β€” but they fixed things just as fast.

MySpace's engineers saw this. They sent reports to DeWolfe showing Facebook's growth rate, their technical advantages, their superior user experience.

DeWolfe's response: "They're a college network. We're global."

He wasn't entirely wrong. In 2006, MySpace was global. They had 10x more users. They had revenue. They had News Corp's marketing machine.

But they didn't have a codebase that could evolve.

The Profile Customization Disaster

MySpace's biggest feature β€” the thing that made it different from Facebook β€” was profile customization.

Users could inject custom HTML and CSS into their profiles. You could change backgrounds, add glitter graphics, embed music players, and make your page look like a 1990s Geocities fever dream.

It was chaotic. It was ugly. And users loved it.

But it was also a security nightmare.

Because MySpace allowed raw HTML injection, users could inject JavaScript. This led to the infamous Samy worm in October 2005 β€” a self-replicating XSS worm that added "Samy is my hero" to over 1 million profiles in 20 hours.

The fix? MySpace added basic sanitization to strip <script> tags.

But the deeper problem remained: profile customization made the site impossible to optimize.

Every profile was a unique HTML/CSS blob. There was no way to cache them. No way to CDN them. No way to A/B test layouts because every user's layout was different.

Facebook took the opposite approach: no customization. Every profile looked the same. This made caching trivial, A/B testing easy, and the experience consistent.

MySpace's engineers proposed limiting customization to preserve performance. DeWolfe refused: "Customization is our moat."

It turned out to be an anchor.

The Turning Point: September 2006

In September 2006, Facebook opened registration to everyone over 13 β€” no longer just college students.

MySpace's engineers sent another urgent memo: "Facebook is now a direct competitor. We need to modernize the platform immediately."

The memo outlined a 12-month rewrite plan:

  1. Migrate from ColdFusion to PHP (or Java/Python)
  2. Build a caching layer with Memcached and Redis
  3. Implement a CDN for static assets
  4. Rewrite the database layer with proper sharding and read replicas
  5. Limit profile customization to improve performance
  6. Build an API for third-party developers (like Facebook's Platform launched in 2007)

The estimated cost: $50 million and 18 months of engineering time.

DeWolfe's decision: "Too expensive. Too risky. We'll iterate on what we have."

This was the moment MySpace lost the war.

The Death Spiral

By mid-2007, the cracks were visible:

  • Page load times hit 15+ seconds on average
  • Sign-ups plateaued β€” MySpace stopped growing
  • Facebook's growth accelerated β€” they hit 50 million users in October 2007
  • MySpace's spam problem exploded β€” fake profiles, phishing, adult content
  • News Corp demanded monetization β€” the site was plastered with banner ads, further slowing load times

In May 2008, Facebook surpassed MySpace in unique visitors for the first time.

MySpace finally tried to rewrite. They hired new engineers, started migrating to a SOA architecture, and limited profile customization.

But it was too late.

The rewrite took 2 years. By the time it shipped, Facebook had 300 million users. The game was over.

In June 2009, Chris DeWolfe was replaced as CEO. In June 2011, News Corp sold MySpace to Specific Media for $35 million β€” a 94% loss.

The Lessons: Why Technical Debt Kills Empires

MySpace's fall wasn't about missing a feature or making a bad marketing decision. It was about technical debt compounding faster than revenue.

Here's what killed them:

1. Confusing Current Dominance with Inevitability

DeWolfe saw 100 million users and assumed MySpace was invincible. He didn't see that Facebook's smaller user base was built on a foundation that could scale.

2. Treating the Codebase as a Black Box

DeWolfe wasn't a technical CEO. He didn't understand that the ColdFusion monolith was a ticking time bomb. When engineers said "we need to rewrite," he heard "we want to waste money."

3. Prioritizing Features Over Infrastructure

MySpace kept shipping new features (video, music, IM) on top of a broken foundation. Each feature made the codebase worse. Facebook did the opposite: they fixed the foundation first, then scaled features.

4. Ignoring Performance as a Competitive Moat

DeWolfe thought customization was MySpace's moat. It turned out speed was the real moat. Users didn't leave MySpace because Facebook had better features β€” they left because Facebook loaded in 2 seconds instead of 15.

5. Waiting Until It Was Too Late to Rewrite

By the time MySpace started the rewrite in 2008, Facebook had lapped them twice. The lesson: rewrite when you're winning, not when you're losing.

The Aftermath

Today, MySpace is a cautionary tale taught in every "Tech Giants That Fell" blog post.

Chris DeWolfe went on to found Jam City, a mobile gaming company. Tom Anderson became a travel photographer.

Facebook became Meta, worth $800 billion.

And somewhere in a data center, there's probably still a ColdFusion server running a forgotten MySpace profile, loading in 12 seconds, waiting for a friend request that will never come.

The three-word email β€” "We're fine now" β€” became the epithet of an empire that confused current success with future survival.

In tech, standing still is moving backward. MySpace stood still. Facebook sprinted. And the rest is history.

✍️
Written by Swayam Mohanty
Untold stories behind the tech giants, legendary moments, and the code that changed the world.

Keep Reading