3 months of multilingual SEO — HEXACO, first milestone

5 min

Why HEXACO

MBTI has been trending in Korea for years now. The same wave is hitting Japan and China. 16personalities sits at the center of it, pulling tens of millions of visitors per month. So what's the next MBTI? That's where I started.

The reason MBTI sells isn't science. It's that it's a four-letter shareable label. The Big Five has stronger academic backing, but it's score-based. Nobody introduces themselves as "I'm an O 80, C 55, E 70 person."

So I narrowed the candidates. Enneagram already had a thick core fanbase and saturated keyword competition. Attachment styles were too tied to romantic contexts to work as everyday self-introductions. Big Five was out for the reason I just mentioned. What remained was HEXACO. An academically respected model, but almost unknown to the general public. On top of that, splitting six dimensions into High/Low gives 2⁶ = 64 possible combinations (turning those combinations into actual types requires naming and describing each one, but that's outside the scope of this post). The point is, HEXACO had the potential for typification that the Big Five never had.

Strategy — Intent, Multilingual, Hybrid

Three axes.

Dropped brand queries from the start. The word hexaco is already claimed by the original academic site and long-established psychology blogs. What I could compete on were action + modifier combinations like free hexaco test or hexaco 성격검사 무료. Long-tail first, one keyword at a time.

Went multilingual early. The English-speaking web is a red ocean for MBTI content, but Korean, Japanese, Spanish, German, and Arabic had virtually no HEXACO content. I started with about 10 major European and Asian languages in the first month, added more every few weeks, and covered 18 languages by mid-March. The goal was to claim basic search terms in each language first.

Blog came later. I initially thought the test alone would be enough. It wasn't. Search traffic needs quality explanatory content. I added a multilingual blog system in early March.

I consciously avoided mass-produced SEO content. I'd set the concept and outline first, generate a draft with AI, then rework it myself.1 Even in the age of AI, the editor's manual work can't be skipped. Scaling to multiple languages makes the workload balloon fast, but skip this process and you drown in generic content.

What I Did Over 3 Months

  • Late JanMeta tags, JSON-LD structured data, sitemap, hreflang setup
  • FebKeyword optimization for 16 languages, WebSite schema, favicon/OG image cleanup
  • Early MarBuilt MDX-based multilingual blog system
  • Mid MarAbout/Learn/blog content in multiple languages, internal link strengthening
  • Late MarNative QA overhaul
  • Early AprFirst serious look at Search Console
  • Mid AprData-driven meta title CTR optimization

The longest part wasn't writing multilingual content. It was native QA. Machine translation gets you a draft, not a product. Each language had awkward phrasings and search pattern differences that needed manual attention.

There was one thing I went back and forth on. I published all 64 type names and descriptions on the blog. I knew someone could copy them, but I published anyway. Being the first person to organize them felt more valuable than keeping them hidden.

For the same reason, I stripped out anything attention-grabby — viral mechanics, curiosity-baiting thumbnails, ego-stroking "you're in the top 1% of geniuses" copy. Kept the UI understated, colors quiet. Short-term traffic would benefit, but for a site aiming to build academic credibility over the long term, that stuff works against you. The site might look a bit bland to today's audience.

3 Months in Numbers

Daily average impressions on Google Search Console:

  • Feb: 8 per day
  • Mar: 149 per day
  • Early Apr: 600+ per day
The starting point was effectively zero, so percentage growth is meaningless. 50 countries, 1,504 people completed the test.

Country distribution was unexpected. Korea at #1 makes sense — it's my native language. But #2 was Mexico. Then Japan, followed by Germany, France, Türkiye, and Russia. The US had plenty of impressions but the lowest CTR at around 1%. First sign that English wasn't going to be easy.

Keywords with high CTR were mostly non-English + intent combinations. Korean "헥사코 테스트 무료" in the 20% range, Japanese "hexaco 診断 無料" at 40%, German "hexaco test deutsch" at 24%. Recently, 免费 hexaco 测试 hit #1 on Baidu as well.

Things That Went Differently Than Expected

The English-speaking market was much harder than expected

Not following the "English first" convention turned out to be a good call. Brand queries were already taken, as mentioned. Intent queries (personality test and the like) have 16personalities sitting on top of them. That's why I targeted variant keywords like 64 personality test. Still, English was the last market to approach.

English-first is pre-LLM era advice

When I asked LLMs (mostly Claude Code) along the way, the answer kept coming back: "start with English, validate, then expand to other languages." Books say the same. Indie hacker conference talks say the same. It's all pre-LLM era advice. Back then, the cost of producing content in non-English languages was too high, so validating in English first made sense.

Now, with a little effort, you can start with 18 languages from day one. You can set up a machine-translation-plus-native-QA workflow in days. While you're fighting over saturated keywords in English, non-English long-tail terms are still wide open.

Google Search Console only shows part of search

GSC was my main tool for all three months. Then I was going through my own analytics logs and realized Baidu traffic had been trickling in steadily since late March. GSC only sees Google. Baidu, Bing China, Yandex, Naver each need their own observation tools. If you're running a multilingual site, you need at least two independent observation points.

Translation is a process, not a deliverable

I shipped all 18 languages with machine translation and left them alone. When I ran native-level QA in late March, every language had 2-5 awkward expressions. In French and Turkish, I'd shipped with missing diacritics (é è ç, ş ç ğ ı). Grammatically it still makes sense without them, but to native speakers it looks off. Even after fixing those, every UI copy change meant running QA again.

Mid-Experiment Observation

Three months isn't enough to prove anything. The line is going up, but whether this slope holds, plateaus, or breaks, I don't know. Whether this is specific to HEXACO or generalizable as a niche strategy in saturated markets, I also don't know. Going hands-on taught me faster than reading about it.

  1. As a non-native English speaker, I have a soft spot for em dashes. They feel exotic in Korean writing. But lately they've become an AI-writing signal, so I've been holding back.