Xudong Yang

Hi, welcome to my blog! 👋 I love thinking, digging in and figuring out things!

My latest writing is below. Feel free to read and explore!

Rebuild website for Baan Aksorn

Earlier in July this year, I helped my Thai language school Baan Aksorn rebuilding their website. Nearly three months later, I have seen good outcomes from Google Search and Cloudflare metrics.

Previously the website was built with WordPress and hosted on DreamHost in shared host fashion. Honestly speaking I didn’t like that version.

There are few reasons I don’t like it:

Even I can see some “good” technical patterns, it in return adds up to the confusion. For example, the website has a blog section exhibiting a few somewhat related articles (e.g. where to travel in Thailand) for long-tale search optimisation. However, in my eyes as a reader, these pages appear to be irrelevant and push me away because it makes it even harder for me to find really useful information.

So, when the school manager mentioned that there were difficulties maintaining the old website, I knew it’s time to raise my hand for some refresh work.

The manager entrusted me with whatever I think it’s good for the school, so I arrange a day for us to sit down together, using the help of generative AI, iterating the prototype, visual design and adding content. Eventually we rebuilt the whole website.

Here is a comparison of the old and the new:

Apart from the visual changes, the website has gone through a complete overhaul. After consulting the usage pattern of the manager, WordPress is completely off the table because the school never updated any content on their own. It was all delegated to a tech person who operated that WordPress on their behalf. Following this pattern, I am very happy to give up WordPress because I don’t need their “convenience” to manage content on the web UI. In fact, I find WordPress UI unpleasant, and I prefer as-code style much better. So baanaksorn.com naturally adopts the same technology with this blog - hugo (actually I am considering to reconstruct this blog using Astro , but that is another story).

From deployment perspective, DreamHost shared hosting is off the table too. Since hugo generates static HTML/CSS/JavaScript files, I don’t need to host a 24x7 server. I chose Cloudflare Pages. It’s free, fast and easy to use. This is the first time I tried Cloudflare Pages, and I am seriously evaluating it for my blog too (my only concern is the access from Chinese mainland). For the school’s website, Cloudflare is perfect.

Content-wise, the blog section was removed. I considered that long-tale search optimisation too, but considering it’s not really realistic for the school to maintain that blog, it’s hard to keep it really valuable. After evaluating the trade-off of potential distraction to the reader, maintenance efforts and its value, we decide to drop the blog section for now.

On another hand, most pages have now embedded a JSON-LD structured data, aiming for better readability to machine (search engine and AI bots). We hope this will amplify the actual important information of the school (available course, fee, frequently asked questions etc.).

I also signed up Google Search Console for this website, and after weeks I started getting Google Search insights.

At the end, the outcomes are great. The new website has been live for two months or so, the search rank of “Thai Language School Bangkok” on Google increased from the bottom third page to the top of second page.

Not sure how much it’s relaetd to this reconstruction because I didn’t test before it. From time to time, Google includes it on the top of the search result as a part of the local business. Gemini has also included Baan Aksorn in their recommendation sometimes.

The Google Search Console doesn’t record the historical data before I signed up, so I can’t directly compare the impression and click values, but the keywords I used to test often appeared on the console and showed a significant increase of impression. I think it indicates real positive result too because I for one surely don’t search this often.

Google Search Console reports increase of impression
Google Search Console reports increase of impression

Cloudflare has shown roughly 20-30% increase of requests throughout these two months. I think it indicates an improvement of SEO, which leads to more and more traffic as the website ranks higher gradually. One interesting Cloudflare metrics I would like to show is the AI bot observability.

AI Crawlers detected by Cloudflare
AI Crawlers detected by Cloudflare

I noticed ChatGPT-User, which is strictly user initiated, constantly grow. I think this is another good signal that the SEO and structured data is delivering the expected outcome.

A few minor details are still not fully finished; for example, some UI interaction on mobile view still needs to be polished, but so far the website looks much cleaner, better and faster than before. I hope our fellow learners and potential students finding it enjoyable.

Recent posts