Lessons Learned trying to monetize this blog

I planned to make some money from adverts and affiliate links. So far, things haven’t worked out as expected. I want to share some lessons learned trying to monetize this blog.


Before getting started I tried to figure out how to monetize this blog. After searching through many income reports I found a common trend. Most, if not all, of the sites used a combination of adverts and affiliate links. By far the most common of those were Google AdSense and Amazon Affiliate Links.

Unfortunately I limited my research there and didn’t look into how to join them. If only I considered there might be entry requirements.

The Shock

Amazon Associates rejected me

I already had a post about a couple of books I’d read that made this site happen. So I decided I’d apply to the Amazon Associates site first.

The application process was quick and easy and it appeared to be working. I got an associate ID and built a few links. Added them to my site and sat back thinking “watch the cash roll in”.

Unfortunately I woke up to an email containing:

Since your website does not appear to be finished, we are unable to view your content in its entirety.
We have decided that your site may not present a mutually beneficial business opportunity and because of this, we can not accept your application at this time.
We encourage you to resubmit your application after creating a unique site with original content.

Income stream #1 closed.

Google Adsense rejected me

Before the Amazon rejection email arrived, I also applied for a Google AdSense account. I woke to another rejection email, this time containing a little more information:

Insufficient content: To be approved for AdSense and show relevant ads on your site, your pages need to have enough text on them for our specialists to review and for our crawler to be able to determine what your pages are about.
To resolve this issue, please work through the following suggestions:
○ Make sure that your pages have sufficient text – websites that contain mostly images, videos or Flash animations will not be approved.
○ Your content should contain complete sentences and paragraphs, not only headlines.
○ Ensure that your website is fully built and launched before you apply for AdSense – do not apply while your site’s still in a beta or “under construction” phase or only consists of a website template.
○ Place the ad code on a live page of your website. It does not have to be the main page, but test pages that are empty except for the AdSense ad code will not be approved.
○ Provide a clear navigation system for your visitors so that they can easily find all of the sections and pages of your website.
○ If you’d like to monetise YouTube videos, please apply for the YouTube monetisation program. Note that blogs and websites that contain only videos will not be approved.

Income stream #2 closed.

What’s going on?! Surely they want to sell ads?! If I want to “buy” them what’s the issue?

I waited until I had a bank account to join these networks! If I knew I could fail I would’ve applied weeks ago!

Google and Amazon sell Ads and I’m offering to buy

The Reality

In hindsight, Google and Amazon have a brand and reputation to protect. They don’t know me or this site from Adam. There is obviously a cost to them associated with these things and they don’t want to waste their time.

I was naïve. I had 4 posts, 4 pages and zero page views yet expected these giants to welcome me with open arms. Embarrassing when you think of it! I’m surprised they even bothered to reply.

Lessons Learned

I’ve learned the following things.

  1. Pinning a large percentage of your money making strategy on 3rd parties is not a great idea
  2. Research how things work, don’t rely on how you assume they work
  3. Don’t wait for a bank account before trying to join them

What’s most sickening is all were preventable. All I needed to do was think and research a little more.

Conclusion and Future Hope

These were quite painful lessons to learn as they’ve hit me in the wallet. I’d also love to think they’re the only mistakes I make in the lifetime of this blog, but that would be even more naïve.

Yet it’s not the end of the world. There’s light at the end of the tunnel as you’re allowed to apply again. And that’s exactly what I plan to do. Once I’ve addressed the concerns highlighted and have a small audience.

I’m toying with the idea of applying once a month. Keeping track of the number of posts I have, my audience etc so I can if there’s a cut off. Not sure at the moment.

In the meantime, I’m going to see if there are other ad networks willing to accept a beginner! After some research.

Please avoid the mistakes I made. Don’t pin your hopes on something you’re not prepared for.

How to Deploy a Serverless React App to a subdomain

You’ve built a React.js application, tested it and are ready to deploy. This simple guide; how to deploy a serverless React app to a subdomain can help make your app live.

The Problem

After I finished my first app, Meeting Cost, I didn’t know how to deploy it. I’d never actually deployed any React.js application before. As my hosting provider, Tsohost (affiliate link), allows an unlimited number of them. I decided to put each app I built on its own subdomain. 

The Solution

This will be TSO Host specific, but will be very similar for anyone who’s hosting provider uses cPanel. Although I can’t be certain, I imagine the principles will also be true for all hosting providers.

Step 1  – Create the subdomain

Once you’ve logged into cPanel, find the “Subdomains” option and click it. You should see a form like the screenshot below.

The Subdomain field is the first part of the URL before the first full stop. The Domain dropdown is the site you want this new subdomain to be hosted under. Document Root is a complicated name for where you want the files to live.

I wanted to host my app at http://meetingcost.myappincome.co.uk. I wanted the files living in a folder called “MeetingCost”. So I filled out the form like this:

cPanel - Create subdomain

cPanel – Create subdomain

If you’re planning to deploy lots subdomains feel free to come up with a better place for the “Document Root”. As long as it’s somewhere under “public_html” I don’t think it matters.

After clicking create, the bottom of the page should look something like this:

cPanel - subdomain list

cPanel – subdomain list

Click the link in the Document Root column to get ready for the next step.

Step 2 – Deploy your app

You should now see the cPanel File Manager. All you need to do is change directory to the place you put in Document Root in Step 1 and upload your app.

This will vary on the build system you have for your app. I was using a simple boilerplate that left me with a “dist” folder containing the following:

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
-a---        26/06/2016     10:15     146686 bundle.js
-a---        26/06/2016     10:15    1612148 bundle.js.map
-a---        26/06/2016     10:15       1406 favicon.ico
-a---        26/06/2016     10:15       1035 index.html

I simply uploaded all of those to public_html/meetingcost and that’s it! Go to step 3.

Step 3 – Test it

This is the exciting part, go to your deployed add and celebrate. Or, start worrying because like me you got a 404 “Page Not Found” (or something similar).

No need to panic though because if you’ve followed the steps above , it’s most likely DNS issues. The changes required for your site haven’t made their way around the world. Use a DNS propagation checking like https://www.whatsmydns.net/ to see. 

Confirm DNS propagation Tool

Confirm DNS propagation Tool

Once there are green ticks everywhere, you should be good to go. Congratulations, app deployed!


As you can tell from the title of this post. This how to will only work if the app you’ve created is serverless. By serverless I mean it does not need an express.js (or something similar) server to work. I haven’t created such a site yet, so can’t say how this guide will change. Once I do though, I’ll be sure to make a new post.

In the meantime, if you followed this guide or have any questions, please let me know. Feel free to leave a comment below or contact me on twitter.

Getting Started Tasks

I made a list of things I wanted to do before starting my attempt to earn extra income. Time will tell if the list is complete or contains stuff I didn’t need to do. Here I’m sharing my getting started tasks.

I intend to post a follow up of lessons learned in a couple of months.

Before creating a website

Create a limited company – An expensive route to take, but I wanted the financial protection a limited company would give me. Forming a limited company online yourself is trivial at https://www.gov.uk/limited-company-formation/overview. Or there are companies that will do it for you. I used http://www.1stformations.co.uk at the cost of £13.19. I’m hoping to get cashback setting up a business bank account via them and you get a free .co.uk domain.

Financial Records Spreadsheet – Keeping good records is essential, so I just downloaded a decent template via google.

Open business bank account – Just as keeping records is essential, keeping the money separate is a good idea too.

Company Email – I wanted a separate email account to keep things separate.

Find an accountant –  An essential for a limited company. From what I’ve read, I might be able to file my annual returns myself, but it would be a lot of work. I’d rather spend those hours elsewhere. I haven’t actually done this yet, which might prove to be a mistake.

Setup website

Register a domain – I did this through names.co.uk as I got it free with the company registration, but there are loads of options available.

Buy site hosting –  This site is on Tsohost (affiliate link) and I couldn’t be more impressed. I’ve asked several “stupid” questions using their ticket system and have no complaints. If you’re looking to build a site, I definitely recommend them. 

Install WordPress Themes and Extensions – Part and parcel of WordPress are extensions. I’ve added one for caching (speed up the site), backups (essential) and SEO so far.

Google Analytics – This is simple to setup via a WordPress extension.

After website setup

I haven’t done any of this yet, but this is about getting the word out there that the site exists.

Create a Twitter account

Create a Facebook page – not sure if I’ll do this, but it’s an option

Marketing – no idea how, but definitely need this!


Register for Self-Assessment – As a director of a limited company, you must register for self-assessment. Thankfully that’s easy at https://www.gov.uk/register-for-self-assessment/not-self-employed

Register for Corporation Tax – Another legal requirement. HMRC will send me a UID to register. I haven’t got this yet, so can’t say.


Quite a long list but that covers everything I thought of. Please let me know in the comments below if you think I’ve made a mistake.