Conversational AI · Advisory

A skincare advisor that knows when not to recommend.

Geek & Gorgeous makes effective actives — acids, Vitamin C, retinoids — sold at accessible prices. Their shoppers ask real questions at the point of decision that a product page can't answer. The brief was to design a conversational advisor for their site. The first design problem wasn't how to recommend. It was how to stay within the brand's evidence and avoid giving advice the brand couldn't stand behind.

Advisoryengagement · prototype delivered 8-steppipeline · rules decide, LLM explains Integratingwith G&G engineering
The prototype

Anna — the G&G skincare advisor.

Opening state
Opening state
User question
User question
Anna answers
Anna answers
Product card
Product card
intent route routine / concern / serum / compatibility
signal extraction skin type, concern, active interest, missing context
rules layer recommend / defer / sequence / exclude
commerce render answer + product card + add-to-cart
The problem

Actives are a category where a wrong recommendation has real consequences.

Geek & Gorgeous products work. Their core range — acids, Vitamin C, retinoids — is well-formulated and well-priced. But active skincare is a category where layering the wrong things, introducing something too strong too early, or ignoring a sensitivity signal can damage someone's skin barrier. The PDP explains what a product does. It doesn't know what the shopper is already using or whether their skin can handle it.

The brief was to design a chat-based advisor for the brand's site. The product question that followed immediately: what does the system do when it doesn't have enough context to give a safe recommendation? A generic RAG chatbot answers anyway. That was the wrong starting point.

The design decision

The LLM decides the wording. Rules decide the recommendation.

I designed a three-layer architecture. Memory informs: the system tracks what the user has shared. Rules decide: an eligibility engine determines what can be recommended, what should be excluded, and whether the system has enough information to recommend at all. The LLM explains: it receives a structured response plan and writes the answer in G&G's voice. It doesn't choose products.

Rules decide. LLM explains. Those are two different jobs.
Layer 1

Memory informs

Skin type, concerns, current routine, sensitivity flags, prior conversation. Shapes what the rules engine considers. Never selects products.

Layer 2 · decision layer

Rules decide

Eligibility, exclusions, safety fallbacks, ranking, routine sequencing. Whether the system recommends, defers, or asks a clarifying question first.

Layer 3

LLM explains

Receives the response plan. Writes the answer in brand voice. Constrained to what the rules layer has already decided.

The pipeline

Eight steps. The LLM is step eight.

1

User message

Free-text input. No structure imposed on how the shopper expresses their question.

2

Intent classification

Categorised: product recommendation / compatibility / routine building / education / unsafe-fallback. Routes the pipeline from here.

3

Signal extraction

Structured output: skin type, concerns, sensitivity, current routine, budget. Also: what is still unknown and needed before a recommendation is safe to make.

4

RAG over brand knowledge

Retrieves relevant product claims, ingredient guidance, and usage rules from the brand-approved knowledge base. No general-knowledge generation.

5

Eligibility + compatibility rules

Rules engine runs against every candidate product. Products that conflict with known signals, carry disallowed claims, or require missing context are removed before ranking.

6

Ranking + routine sequencing

Eligible products ranked by signal match. Routine order applied — what to introduce now, what to hold back, what can't be layered together.

7

Response plan

A structured JSON object: what to recommend, what to caution against, usage order, clarifying question to ask. The complete decision. Step 8 only explains it.

8

LLM explanation + UI render

Receives the response plan. Writes the answer in G&G's voice. Product cards rendered alongside with rationale and usage guidance.

Follow-up conversation

The system carries context. It doesn't re-ask.

Follow-up question
Follow-up question
Routine sequence
Routine sequence
Second product
Second product
Full routine carousel
Full routine carousel
context carried skin type, concern, active interest retained — not re-asked
Vitamin C excluded sensitivity flag + unknown active use → eligibility block, not prompt refusal
routine sequence azelaic acid first → Vitamin C added only after context confirmed
commerce render full routine carousel → aPAD + B-Bomb with rationale
Claim governance

Some limits belong in the rules engine. Others belong in the prompt.

A prompt instruction saying ''avoid medical language'' is soft guidance. An LLM can reason around it under an unusual input. A structural block in the product metadata and eligibility engine is enforced regardless of what the LLM receives. That distinction matters — especially in a health-adjacent category.

If a claim creates medical, regulatory, or brand-trust risk, it lives in the rules layer. If it's about tone or wording, it lives in the prompt. The categories were defined with the G&G brand team and encoded in the product metadata schema as disallowed_claims and caution_flags fields.

Structural block — rules engine + product metadata Prompt layer — tone + wording
Hard blocked
  • Medical adjacency: acne treatment, eczema, dermatitis, rosacea, melasma
  • Prescription actives, medication interactions, pregnancy and breastfeeding
  • Safety consequence: strong acids on high sensitivity, damaged barrier, reported burning or peeling
  • Outcome guarantees: “will clear”, “will not irritate”, “safe for everyone”, “cures”, “treats”
  • Claims not in approved catalog evidence · before/after overclaims
Soft guidance
  • Brightening claims — cosmetic, not medical. Allowed with approved wording.
  • Tone: warm, specific, honest — G&G brand voice
  • How to frame a “not yet” — explain the reason, not just the refusal
  • Clarifying question style: one question, directly relevant to the next decision
Status

Prototype handed off. G&G engineering integrating.

The handoff included the full architecture spec, product metadata schema, rules engine logic, and an eval framework covering recommendation quality and safety behavior. The brand team can extend it without needing to reverse-engineer the design intent.

In progress
  • Integration by G&G engineering
  • Admin panel for product rules, approved claims, exclusion reasons
  • Pilot on PDP and routine education pages
Measuring against
  • Add-to-cart rate on advisor-assisted sessions
  • Conversation follow-through rate
  • Fallback rate — how often the system defers vs. answers
  • Wrong-fit signals: returns and product complaints

The system's value isn't that it can always answer. It's that it knows the difference between a recommendation it can stand behind and one it can't.

Advisory engagement · Geek & Gorgeous