Skip to main content
Jun 25, 2026 · 7 min

Two different animals

Half of SoiTarot is built for machines to crawl. The other half is built for a person to play with. They share a brand and almost nothing else.

Khoa

Everything I've written about SoiTarot so far has been about the machine that prints pages — the combinatorial SEO, the content fence, the agents. But a site that only does SEO is a brochure. The reason to build the search engine was to bring people somewhere worth arriving — and that somewhere is a different beast entirely. SoiTarot is really two products wearing one brand.

The crawl half and the play half

The two halves have opposite jobs, and almost opposite engineering:

The SEO pagesThe interactive product
Who it's forcrawlers + skimmersa person, leaning in
Count~15,000, generateda handful, hand-built
Renderingstatic, prerendereddynamic, stateful
Animation budget3 at once, ≤600ms6 at once, up to 1s
Success metricindexed + rankedthe draw feels good
Datacontent, mostly readaccounts, saved readings

The compatibility pages, the card meanings, the horoscopes — those are the crawl half: fast, static, held to a strict Core Web Vitals budget because a tenth of a second of jank is a ranking tax. The draw flow — shuffle, pick, flip, read — is the play half, where the animation is the product and a little theatre is the point. The card-flip that would be reckless on a horoscope page is exactly right here.

Why the split is the architecture

Trying to serve both jobs with one approach is how sites end up mediocre at both — a janky app bolted onto slow content, or beautiful content no one can interact with. So I let them be different on purpose. The crawl half is prerendered and motion-starved; the play half is a real app with state, accounts (sign in with Google), and a database holding what a person drew and saved. Same tokens, same art direction, same Crescent Eye brand — but underneath, two different animals.

SEO's job is to get a stranger to the door. The product's job is to make them glad they came. Build one thing to do both and you usually get neither.

The funnel nobody talks about

Here's the strategic point that the SEO-heavy story hides. All those combinatorial pages aren't the destination — they're the top of a funnel. Someone searches "Cancer and Sagittarius," lands on a genuinely useful page, and the interactive draw is right there: want a real reading, not just the compatibility note? The static half is the world's most patient acquisition channel; the interactive half is where attention turns into a session, an account, and — eventually — the question of whether any of this converts into something.

That conversion question is the next thing I have to answer, and I haven't yet. The machine proved it can bring people in. Whether the play half is good enough to keep them — and whether "kept" ever becomes "paid" — is the part of the experiment still running. The crawl half was the engineering. The play half is the actual product. I spent the first week proving the first one works; the more interesting bet is the second.