Case study
AI Astro Expert
An astrology product that refuses to frighten you into buying the answer.
Live
aiastroexpert.com ↗ · Shipped
The challenge
Consumer astrology has a business model problem, and it shows up in the writing. The standard pattern is to open on an alarming prediction — a bad transit, a doomed period, a warning — and then sell the reassurance. That makes the product commercially effective and editorially indefensible, and it makes the AI version worse rather than better: a language model asked to write a horoscope will happily invent planetary positions to justify whatever it has already decided to say. Two things had to be true at once. The astronomy had to be genuinely computed rather than generated, and the writing had to be prevented — structurally, not by good intentions — from reaching for fear.
The approach (built with Claude Code)
Enable built it as three layers with an absolute separation between them: a self-hosted ephemeris for planetary positions, a Python calculation layer for the chart itself, and Claude for interpretation only. The rule the whole architecture exists to enforce is that the language model never computes a chart value — if it looks like the AI needs to check a position, that is a bug in the layer below, not something to let the model estimate. Interpretation is retrieval-based rather than fine-tuned, so every claim stays traceable to a citation pointer in a human-reviewed corpus, and the interpretive prose is platform-authored rather than lifted from copyrighted translations. The anti-fear guardrail is enforced in code and tested, not left to the prompt. And because a reading's quality depends on the exact model that wrote it, certification is pinned to a specific model pair: any upgrade, deprecation or alias re-point invalidates certification across every vertical at once and forces a full re-run before that model is allowed to serve a customer.
What we shipped
A live consumer product at aiastroexpert.com. The full first reading is free and needs no account and no email — the birth form is the whole funnel. Four readings are available afterwards at $4.99 each: Love & Relationships, Wealth & Career, Health & Wellbeing, and Your Year Ahead. The interface is built around getting the inputs right, because they are what the accuracy claim rests on: birth time is explained in terms of the ascendant moving roughly every two hours, the birth city is locked to precise coordinates from a lookup rather than typed text, and each field states plainly what it is and is not used for — the visitor's name never reaches the reading engine at all.
Outcome
Live since 19 August 2026 — hours old at the time of writing, so there is nothing yet to report on traffic, conversion or revenue. No estimated figures are published here; this section gets numbers when the client has verified ones to give.
Screenshots
Tech notes
Next.js (App Router) + TypeScript on Vercel, Python calculation middleware, self-hosted ephemeris (MIT-licensed, JPL public-domain data), PostgreSQL + pgvector for the retrieval corpus, Claude for interpretation with a separate judge model for certification, Stripe for the paid readings.


