Read this first: This is not a tutorial. This is not a recommendation list. This is not sponsored content. It's a raw, honest log of one solo developer's 500-day journey running an AI review site. Every number is real. If you're considering building your own content site, or you're just curious whether a personal site can actually pay the bills, this article is worth your 20 minutes.


1. Why I Built an AI Review Site

Back in January 2025, the LLM hype was at its peak. I was spending hours every day trying out AI tools β€” ChatGPT, Claude, Midjourney, Cursor, Pika, Runway, you name it. After each trial, I'd write a quick review and share it in my WeChat Moments.

A friend told me: "You should publish these on a real platform."

I didn't go with a Chinese social media platform.

Instead, I registered aiceping.top. My reasoning was simple: traffic on social platforms is rented. A domain name is yours forever.

I didn't overthink it at the time. I figured: I'm using these tools anyway, I'm writing about them anyway β€” why not turn this into an asset I actually own?

500 days later, looking back, that was one of the best decisions I made in 2025.

But not because it made money.


2. The Raw Data After 500 Days

All numbers as of May 28, 2026. No rounding, no "approximately" β€” these are exact.

2.1 Content Output

Metric Value
Total articles 92 (70 Chinese + 22 English)
Total word count ~340,000 characters (Chinese) + ~65,000 words (English)
Longest single article 6,200 characters (Chinese SQL review)
Shortest article 1,200 characters
Publishing frequency ~1 article every 5.5 days
Content breakdown Deep reviews 45%, war stories 30%, industry analysis 15%, tutorials 10%

2.2 Traffic Data

I use Vercel Analytics plus a custom log analyzer. No third-party trackers.

Metric Value
Cumulative unique visitors ~68,000
Daily UV (last 30 days) 246
Daily PV (last 30 days) 542
Average session duration 3 min 42 sec
Bounce rate 67%
Traffic sources Search engines 58%, Direct 22%, Social media 12%, Referrals 8%

Let's be honest β€” for a major site, these numbers are tiny. But for a personal site with zero marketing budget, every one of those 246 daily visitors was earned one article at a time.

2.3 Revenue and Costs

Costs

Item Total (5 months) Notes
Domain ~$9/year aiceping.top, bought via Tencent Cloud
Vercel Pro $20/month Γ— 5 months Free tier would've been fine; I paid for analytics
AI subscriptions Claude $20 + ChatGPT $20 = $40/month Cannot write reviews without testing tools
DeepSeek API ~$4/month Used for rewriting and translation assistance
Total ~$350 Not counting electricity or my time

Revenue

Source Amount Notes
Ko-fi tips $45 From English readers
One-time donations ~$3 From the Chinese donation page
Sponsored content $0 Declined 3 offers so far
Ads $0 Traffic too low to matter
Total ~$48 That's right β€” 500 days, net loss of ~$300

This number is embarrassing to share. But I promised transparent numbers, and here they are.


3. What Nobody Tells You About Running a Content Site

Before I started, I devoured posts about "how I made $10K/month with my blog." Looking back, I'd estimate 95% of those were selling courses.

The reality is completely different.

3.1 The True Cost of One Article

I tracked my time precisely:

A single 2,000-word Chinese deep review:
- Testing the tool: 30 min ~ 2 hours (depends on complexity)
- Collecting screenshots and materials: 20 min
- Writing the draft: 1 ~ 2 hours
- Editing and polishing: 30 min
- Frontmatter, tags, SEO metadata: 10 min

Total: ~2.5 to 5 hours per article.

At 2 articles per week, that's 5 to 10 hours. If you have a full-time job, this time comes from 10 PM to 2 AM.

3.2 The Bilingual Reality Check

Everyone says "build an English site β€” bigger audience, higher CPM."

I published 22 English articles alongside my Chinese content. The result? The English articles β€” representing only 24% of all content β€” drove 45% of total traffic.

But here's the catch no one mentions: the competition in English is brutal.

I wrote "Best AI Coding Tools 2026" β€” and Google's front page was entirely occupied by sites with millions of monthly visits. It took six months of consistent publishing before my English articles started ranking for long-tail keywords.

3.3 The Harsh Truth About SEO

I invested heavily in SEO. Title optimization, internal linking, Schema markup, Sitemaps, structured data β€” my build.py has over 300 lines of SEO-related code alone.

Here's what actually moved the needle:

SEO Tactic Actual Impact (subjective)
Content quality (depth, originality) ⭐⭐⭐⭐⭐ By far the most important
Hreflang multilingual markup ⭐⭐⭐⭐ Very helpful
Internal linking ⭐⭐⭐ Moderately helpful
Schema / structured data ⭐⭐⭐ Nice-to-have after everything else
Article freshness ⭐⭐⭐ Google does favor recent content
Keyword density ⭐ Basically useless
Backlinks ⭐⭐⭐⭐ Useful, but nearly impossible for a solo site
Article length ⭐⭐ 2,000 words is enough; diminishing returns beyond

The biggest lesson: There are no shortcuts. High-quality content + consistency + time = rankings.


4. The Evolution of Build.py

The site's build tool has gone through 3 major iterations.

V1 (January 2025)

Completely manual. Write Markdown β†’ manually paste into template β†’ manually FTP deploy.

I broke down by article #5. Changing a single navigation link meant editing every HTML file.

V2 (March 2025)

Wrote a 200-line Python script: read Markdown β†’ render template β†’ generate static HTML.

This 10x'd my efficiency. Publishing went from "2 hours writing + 1 hour deploying" to "2 hours writing + 10 seconds deploying."

V3 (April 2026, current)

The current build.py is 700+ lines. Features include:
- Auto-generated Sitemap with Hreflang
- JSON-LD Article Schema
- Auto-generated Table of Contents
- Internal link recommendations
- Related article suggestions
- RSS Feed generation
- Category pages
- Breadcrumb navigation
- CodeHilite syntax highlighting
- IndexNow automatic submission

The core pipeline is delightfully simple:

Markdown articles + templates β†’ build.py β†’ static HTML β†’ Vercel deploy

The entire process takes under 30 seconds.


5. Five Lessons I Learned the Hard Way

5.1 Consistency Beats Intensity

In February 2025, I wrote 5 articles in one week. "I'll do 20 a month!" I thought.

I crashed hard in March. Work got busy. I was tired. I ran out of motivation.

My revised strategy: 2 articles per week, no exceptions. Skip quality? Never. Publish garbage? No. After three months of steady output, traffic started climbing.

Building content is like going to the gym: what matters isn't how much you lift in one session, but that you show up every week.

5.2 Data Doesn't Lie β€” But It Doesn't Tell the Full Story Either

One article β€” the SQL deep dive β€” got exactly 11 views on its first day. I almost deleted it.

A week later, Google indexed it on page 5. Then page 3. Then page 2. Today it's the highest-traffic article on the site, averaging 150+ UV daily.

My rule: give every article 30 days. If it's still in single digits after 30 days, then consider whether it needs changes. Most articles take 2–4 weeks to start getting search traffic.

5.3 English Content Is a Double-Edged Sword

Pros of going bilingual:
- Much larger potential audience
- Higher advertising CPM potential
- International feedback and engagement

Cons:
- Writing costs double (it's two original articles, not translation)
- Maintenance overhead doubles
- Zero immediate ROI

My advice: build a solid foundation in your primary language first. Add English later β€” don't start with both.

5.4 Avoid the Perfectionism Trap

I once spent an entire weekend tweaking CSS β€” adjusting card spacing, optimizing button radii, fine-tuning font sizes.

Result: traffic didn't change. Readers didn't notice.

80% of your energy should go into content. 20% into tech and design. Anything beyond that is self-indulgence.

5.5 Think About Monetization Early, But Act on It Late

$48 in 500 days. That's not sustainable.

But here's the catch: if I'd obsessed over monetization from day one, I'd have quit by day 30, when the site had zero traffic and zero income.

There's a paradox in content creation: if you think too much about money at the start, you won't last. If you never think about it, you also won't last.

My approach: first 6 months, pure content quality. After 6 months, start testing monetization paths.


6. What's Next

500 days is just the beginning. My roadmap:

  1. Increase English content ratio: from 30% to 50%
  2. Launch a newsletter: push quality content to subscribers
  3. Build a mini product: planning an AI tool comparison app embedded directly on the site
  4. Maintain 2 articles/week: can't go faster, shouldn't go slower

Things I will NOT do:
- Accept sponsored reviews (at least not now)
- Pay for SEO (no budget)
- Sell a course (I'm not qualified to teach anyone how to make money)


Final Thoughts

If you're a solo developer thinking about starting your own content site, here's my advice:

Find a topic you genuinely, sustainably care about. Then start writing. It's fine if your first 50 articles are mediocre β€” article #51 might be the one that actually gets readers.

Don't start by asking "how do I monetize this." The best time to ask that question is after you've written 50 articles.

Tools are just tools. I built this whole site with Python + Vercel + Markdown. You might use WordPress, Ghost, Hugo, or Next.js. The important thing is your content, not your tech stack.

And finally β€” thank you for reading this far. This article might not give you any practical "takeaways." But if you're hesitating about starting something β€” just start. Don't overthink it.

That's the biggest thing I learned in 500 days.


Appendix: Full Tech Stack

For the curious, here's every component of this site:

Component Solution Cost
Domain Tencent Cloud ~$9/year
DNS Cloudflare (free tier) $0
Hosting Vercel $0 ~ $20/month
Build Python + custom renderer $0
Analytics Vercel Analytics $0
Comments Lightweight custom system $0
Typography System font stack $0
Images Static files in repo $0
Search Static JSON index $0
Writing tool Obsidian $0
AI assistance Claude + ChatGPT $40/month combined