Stats for my projects this month:

My SEO Experiment:

  • 2,013 unique visitors (+126% from last month)
  • 3,340 page views
  • 00:57 avg session duration

Fantasy Congress:

  • $358 total revenue
  • $882 MRR

I questioned if it was possible, but traffic more than doubled for my SEO experiment in April. I'm a bit suspicious about the stability of this traffic. But maybe, just maybe, I'm experiencing the elusive "hockey stick" growth that marketers always promise with successful SEO.

Nonetheless, it's exciting. I spent four years trying to market Fantasy Congress without much luck. And even though I'm not making money off this site (yet), it just feels good to know I am capable of generating consistent traffic to a website. Marketing is still a new world for me, but something has clicked.

Full Recap

Are Analytics Lying to Me?

Throughout the course of my experiment, I've happily checked Google Analytics to see traffic increase week over week. For the first time in a couple months, I decided to check the site's performance on Google Search Console. There, I found a slightly different story.

Under the "Coverage" tab, I discovered Google Search Console only labels 50 of my pages as "valid", while the remaining 121 pages are labeled as "excluded".

Some of these make sense. For instance, pages for tags have virtually no content on them. But 99 of the excluded pages were marked with the label "Discovered - currently not indexed".

Here's the explanation for this exclusion type, from Google's documentation:

Discovered - currently not indexed: The page was found by Google, but not crawled yet. Typically, Google wanted to crawl the URL but this was expected to overload the site; therefore Google rescheduled the crawl. This is why the last crawl date is empty on the report.

Okay...but this is a completely static site hosted on Github Pages. How could it overload the server?

Moreover, I've seen many of these excluded pages reported as landing pages in Google Analytics. So I was further confused how they could still bring in traffic if they are excluded from search results.

Well, turns out the site is doing quite well for itself on DuckDuckGo, Bing, and Yahoo. The "excluded" pages are only showing up on these search engines. 😅

Honestly, I'm impressed to see people using DuckDuckGo this much.

Looks like I need to do a bit of digging to figure out what's going on with Google. Is it Github Pages? Would it have something to do with duplicate content? It's a bummer to run into issues like this, but I'm excited to see how much more traffic I might get if I can correct it.

Beta Testing Opal

In April, I began letting beta testers try out Opal, a tool I created to generate content for programmatic SEO. So far I have 63 people total who have signed up to try it out.

Unfortunately though, no one seems to really be using it. Only one person has created a template so far.

I've still managed to get some useful feedback. In order to sign up for the beta waitlist, people have to share a little information about their SEO experience and their background. Two people also agreed to do customer interviews with me, which provided some quality insights.

Since there seems to be a decent amount of interest, but lack of follow through, I think the barrier to get started with Opal is just too big for folks at the moment.

From what I've seen, I wonder if this barrier exists for programmatic SEO in general. Opal is a tool to help you implement a programmatic SEO strategy. But if you don't know how to create a programmatic SEO strategy, it probably won't help.

Installing Programmatic SEO for a Client

Completing my programmatic SEO contract gig was the "big" focus for me this month.

By the end of the project, I implemented over 2,000 new landing pages for the client's site. Each page targets long tail keywords in his niche that get roughly 100 - 10 searches a month (though some get more). And all of this was generated from a couple of spreadsheets.

Hopefully, when these pages mature, they'll bring in over 20k users per month to his site.

I really enjoyed this work. It felt more impactful to the business than simply pushing out a new feature. The client operates in an old industry with huge incumbents, and wasn't getting anywhere with traditional SEO. I feel like I gave an underdog a fighting chance.

It would be cool to do more work like this. I used Opal to generate all the content (of course!) and it gave me so many ideas for how to make the application better.

But, I'm not sure where I'd find more clients like this. This guy found me through a blog post, which was the first time my blog has brought in a client for me. Unfortunately the blog doesn't get that much traffic.

And a well known person in the bootstrapper/indie hacker space saw some of my tweets about the project and recently reached out to me to explore working together. So, maybe I could find clients just by talking about programmatic SEO on twitter more? We'll see.

May Plans

Though I'd like to continue working on Opal in the coming month, I have a couple of "quick win" projects that are taking priority instead.

First, I plan to monetize my experiment website with ads or affiliate links. This is phase 2 of my experiment overall. Now that I know I can get traffic, can I also monetize it? Seems likely!

Second, I want to create more websites with programmatic SEO. I have so many ideas! My hope is that programmatic SEO could turn into a profitable stream of passive income for me. At the very least, creating additional sites will make me more practiced and knowledgeable in this space.

Opal is still a big focus for me, but SaaS is a marathon not a sprint. Hopefully in between working on the new sites, I can do a few more customer interviews and release some minor updates.