Skip to content
All work
Case Study — SaaS Product

Reewu

An AI SaaS that helps local businesses collect authentic Google reviews. A QR scan pulls real business context into a prompt pipeline, so the generated review reads like the customer wrote it — not like generic AI text.

Role
Founding Eng
Surface
QR → Web
AI Layer
OpenAI + Claude
Billing
Stripe

The Friction

Businesses know reviews drive walk-in traffic, but the gap between a happy customer leaving the shop and writing a detailed review is enormous. Asking staff to chase reviews does not scale, and generic AI review generators produce text so obviously synthetic that it damages trust — and risks removal by the platform.

The Automation Flow

A QR code at the point of sale resolves to that specific business. Rather than prompting a model with "write a review", the platform assembles a prompt grounded in real, business-specific context — category, services actually offered, location, and the customer's selected sentiment — so the output is specific enough to be genuinely useful to the next reader.

QR IngestionContextual GroundingOne-Tap Publish

System architecture

Reewu — pipeline

Hover or focus a stage to see why it’s built that way.

Grounding over cleverness

The quality difference between a generic prompt and one carrying real business context is larger than the difference between any two frontier models. Most of the engineering went into the context assembly layer, not model selection.

Provider-agnostic LLM interface

OpenAI and Claude sit behind a single internal interface. Pricing, latency and availability all move; being able to switch per-request without touching product code has repeatedly paid for itself.

MongoDB for business profiles

Business records are heterogeneous — a salon and a garage describe their services with completely different shapes. A document store avoided a migration every time a new vertical was onboarded.

Stack snapshot

  • Next.js
  • React
  • Express
  • MongoDB
  • OpenAI API
  • Claude API
  • Stripe
  • Tailwind CSS

Challenges & learnings

Engineering challenges
  • The authenticity barrier

    Early output was fluent but hollow. Fixed by forcing every generation to cite at least one concrete, business-specific detail — a named service, the location, a specific offering — rather than letting the model free-associate.

  • Latency at the counter

    A customer standing at a till will not wait. Streaming the response and pre-warming business context on QR resolve kept the perceived wait short enough that people finish the flow.

Key learnings
  • Prompts are code

    Once prompts carry real business logic they need the same discipline as code — versioning, a fixture set of businesses, and a check that output still contains the grounding details before shipping a change.

  • One tap beats raw capability

    Users never asked which model wrote the draft. Every conversion gain came from removing a step, not from improving generation quality.