Thoughts from 5 years of running an online business

ClickWP turns 5 years old today. Here are some random, not very organized thoughts in conjunction with the occasion.

5 years is a small milestone, but I’m proud of it anyway because I’m still in business when many don’t even survive the first year. And it feels like it’s just hitting its stride.

ClickWP is my 3rd business – my previous businesses were a freelance web design agency and then an online marketing consultancy. 3rd time lucky right? In retrospect it took me several years to figure out my strengths and develop a compelling business offer.

There is no substitute for hard work to make money online. You need a business model where an exchange of value to happen. “Internet marketing” and other get-rich-quick programs are not legitimate business models.

ClickWP is one of the earliest companies offering support and maintenance for WordPress. We opened for business earlier than market leaders WP Sitecare (2012) and WP Curve (2013).

Being an introvert has been a speed bump in ClickWP’s marketing. We don’t blog or send out emails regularly, don’t have a podcast, have not done guest posts or interviews, so ClickWP is not top of mind when people think of WordPress support companies.

I’ve intentionally kept ClickWP small and flexible. In some cases this has caused me to leave money on the table, but the benefits far outweigh that. Besides, ClickWP has provided for me, my family and my team well enough. I can’t complain about my financial position.

But to be honest, it’s been difficult to grow as well. I’m not very good at managing people and good help has been hard to find and expensive. This means I still do most of the heavy lifting in my business, and there’s only so much I can do myself.

Despite all this, I’m really happy with where ClickWP currently is. I’m not really bothered about ClickWP not being more popular or bigger than it currently is. It serves the needs of our customers well, and most importantly of my family*

Operating an online service business is a great way to make friends around the world. I am blessed to have made new friends in Australia, both East & West coasts of USA, Europe and even way out there in Hawaii.

I started my own business because I wanted to avoid having to work on projects or with clients that I didn’t agree with. This has been a big success. Many ClickWP customers have become personal friends of mine.

But the number one reason why I started my own business was so I could be present and involved in my children’s lives. I’m proud to say that I’ve been working from home since before my eldest was born, and see my 2 boys every day. And my awesome wife too.

The past 5 years have been an awesome ride. I’m looking forward to many more.

ClickWP celebrates our 5th birthday with the new Foundations Plan and our first ever sale

* Paul Jarvis articulates this in a much better way than I ever could – I don’t actually care about growth

One of the most common questions I get at ClickWP is how to get the right image to appear in the Facebook link preview. The answer, surprisingly, is the Yoast SEO plugin. Here’s the plain English, Yoast SEO tutorial I wrote that covers the essentials for search and social media optimization.

Setup Fastmail on your iPhone to send from non-Fastmail email addresses

Sent from my iPhone

With my favorite email service Fastmail you can send emails from any email address, not just your [email protected] address. This tutorial will show you how to setup your iOS device (iPhone, iPad, iPod touch) to send as [email protected]. Read More »

Maybank SWIFT code and routing number

Last year I signed up with Braintree to process payments for my business. They needed to know my bank details to send me the money. I couldn’t find reliable sources of these details online, so I had to reach out directly to Maybank and an old contact there to get these.


Routing number: not applicable, see Twitter conversation below

Branch code/number:

Your branch number is contained in your account number, specifically digits 2–5. If your account number is 1123530XXXXX, 12353 is your branch number. (The first digit indicates the account type).

Hope you find this info useful!


Advanced Fastmail rules: Filter all newsletters and filter emails by contact groups


I love Fastmail. They are a super email hosting provider that I’ve used for years now. They have been rock solid and constantly improving. This week I learned how to do something awesome with their email Rules.

Here’s what I wanted to do:

  1. Automatically filter all newsletters and stuff I subscribed to into a Subscriptions folder.
  2. Make exceptions for my favorite newsletters and keep them in the Inbox.

Here’s how to do it:

Subscriptions Rule : Filter all newsletters

My first attempt was to create a filter for each email provider – Mailchimp, Campaign Monitor, InfusionSoft, etc. But there are too many email marketing services and my rules list kept growing and growing.

Then a lightbulb moment: All email marketing service providers include a List-Unsubscribe email header.


List-Unsubscribe email header

A quick support request to the awesome Fastmail team, and they told me how I could filter emails based on this header.

First, make sure you have already created a folder for Subscriptions (or Newsletters, if you prefer). Then go to Settings → Rules → Advanced. Then find the File into Folders tab. Create an advanced rule with the following settings:

Message with: Advanced
The text: exists ["List-Unsubscribe"]
File into folder: Subscriptions
Order: 1

Now any emails sent from a email marketing service will be sorted into the Subscriptions folder. Time to create some exceptions for my favorite newsletters.

Exceptions Rule: Filter by Address Book group

Now go to your Address Book and create a new group. I call mine “Must Reads”. Add your favorite newsletter senders email address to this group.


Next, create another rule (Settings → Rules → Advanced).

Message with: Advanced
The text: header :contains "X-Spam-known-sender" "Must Reads"
File into folder: Inbox
Order: 0

Important! You must set the order of this exception rule to a lower value than the first rule. In my case, the order for my exception rule is 0 while the subscriptions rule is 1. This way, Fastmail will process the exception rule first and bypass the subscriptions rule.

Here’s what my rules look like:


Click for larger version

Yep, there’s another rule in there to filter emails that are just for Promotions e.g. senders who often email about sales that I want to take advantage of.

Hooray! Your inbox is now saner, and you won’t miss anything from the newsletters you really love.

Bonus tip: Unsubscribe from half of all your subscriptions. Seriously.

Why you should avoid themes that come bundled with plugins – a $15 value!


Bundled plugins usually don’t include automatic updates. Unfortunately most theme buyers only find out after they get hacked.


Who loves a $60 theme with free page builder and slider more than the site owner? The web designer. Their single investment gives them hundreds of possible combinations, all without writing a single line of code. Sites are not purpose-built any more. They are adapted from the starting theme design, limited by the web designer’s grasp of the page builder and slider, his creativity (and technical knowledge).

But all those possible combinations, all the features that came along with the theme add up to bloat. And that bloat translates to WooCommerce complaining that templates are out of date. Or slow performance because the site is carrying along a hundred other templates and features it doesn’t need.

So the website owner buys a website from the web designer, not knowing of all these issues. The site is left to grow outdated as it is not kept updated with new versions of the page builder and/or slider plugin. Then the inevitable security vulnerability rears it’s head. Visual Composer and Revolution Slider were both affected fairly recently, the latter indirectly compromising up to 100,000 sites.

The website owner realizes that their site is hacked, leading to panicked messages like the above.

So, don’t buy themes with bundled plugins. If you do, buy licenses for them to keep them updated.

And if you’re a web designer for gods sake take the time to educate your customer you lazy bastard.

See a list of your Loved / Liked songs in Apple Music

Apple Music is awesome! …but quite difficult to figure out 😞 It took me some digging around to figure out how to find my Loved tracks, but I finally figured it out. Here’s how to do it:

  1. Click the heart button (♥) to Love the song
  2. Click the 3-dot button (…) and then click Add to My Music
  3. Create a Smart Playlist where “Loved” = “is true”

Smart playlist to display songs you’ve Loved

That being said… loving / liking a song only tunes the “For Your” section in Apple Music – it doesn’t affect Apple Music Radio. Learn more: How to properly use “Likes” in Apple Music. Something for you to consider as you curate your playlists.


Fix "Google Calendar invitations cannot be forwarded via email" error messages

There are 2 steps to solving this issue:

1. Add your second, non-Gmail email as an alternate email address – Sign in to your Google Account with another email address

2. Setup Google Calendar to accept invitations from the alternate email address – How to respond to invitations forwarded from your alternate email address

Need a step by step guide with screenshots? Check out this article on TechRepublic – Add alternate email addresses for calendar scheduling

Best related posts plugins to replace nRelate

On 1 December 2014, nRelate announced that it would be switching off its related posts recommendation service. Their Related Posts plugin and service for WordPress was an extremely popular plugin because of its ease of use and many options. So now that they are shutting their doors, many WordPress site owners are looking around for a replacement. Here is what I am recommending to my WordPress tech support customers at ClickWP.

IMPORTANT: Choosing the wrong related posts plugin can severely slow your site down. This is because calculating the related-ness of posts is a resource intensive process. For sites with more than 200 posts, I recommend off-loading the computational work to an external service.

The best plugin to replace nRelate is… it depends.

tl;dr Summary

If you use Jetpack and don’t care about customization, use the Jetpack Related Posts module.

If you don’t want to signup for other accounts & services, Contextual Related Posts is a good option for sites with less than 200 posts. Another to consider is Related Posts for WordPress which claims to be able to handle a lot more posts.

If you don’t mind or need an external service to compute your related posts, Shareaholic and AddThis are the best options. One thing to note is that AddThis settings are controlled outside of WordPress, so you must signup for an AddThis account to use this option.

If you’re a publisher who’s willing to pay to increase your audience engagement with your content, Contextly seems very promising.

Want more options? Read this post by Followistic: The 10 Best Related Posts Plugins for WordPress

My thoughts on each of the above options: Read More »



I finally launched the new ClickWP website, after almost a year of planning, designing, and 4 weeks of furious coding. Along with it is an all new branding by Reese Spykerman as well.

Read More »