Skip to content

otto

A co-planner, not a chatbot.

How Otto turns a paragraph into three real trip options.

Architecture

Two phases,
one workflow.

Phase one: the planner

Otto reads the group’s constraints — who’s coming, when, budget ceiling, travel radius, vibe — and maps the possibility space. It identifies three destination candidates and explains why each fits the intersection of constraints.

If there are trade-offs between budget and distance, or between kid-friendliness and nightlife, Otto surfaces them explicitly rather than silently optimizing for one.

Powered by Claude Opus · Anthropic’s most capable reasoning model.

Phase two: the synthesizer

Each candidate gets enriched into a full trip card. Specific lodging within the household budget. Anchor activities for the group composition — hikes for the active families, restaurants for the foodies, downtime options for the group that doesn’t want every hour planned. Estimated cost per household, broken down transparently. The output is three ready-to-book options, not three starting points for more Googling.

Powered by Claude Sonnet · Speed and specificity.

Differentiators

What makes this different.

Specificity

Real places, real prices.

Otto doesn't generate fictional hotels or placeholder pricing. It references real lodging, real nightly rates, real availability windows. When a cabin sleeps eight and costs $280 a night, that's a verifiable number, not an estimate rounded to sound plausible.

Transparency

Honest reasoning.

Every option comes with a paragraph explaining why Otto picked it — and what the trade-offs are. If the best option exceeds the budget by $200 but has the best lodging for the group, Otto says so. No hidden rankings, no sponsored placements, no cheerful agreement with constraints that don't have a good answer.

Economics

Cost-controlled.

Every research run is metered and tracked. Hard cap per trip, per household. No runaway API bills, no surprise charges for a second round of research. The cost of intelligence is built into the product price, not passed through as a variable.

Reliability

Validated output.

Every response passes through strict schema validation. If the output doesn't match the expected structure — missing a cost estimate, hallucinating an amenity, omitting a date range — Otto retries or falls back gracefully. The product never surfaces a broken card.

The pipeline

From paragraph to trip card.

Your input

Natural language

Planner

Claude Opus

3 candidates

Destinations + reasoning

Synthesizer

Claude Sonnet

3 trip cards

Ready to decide

a real example

What Otto returned.

“fall weekend, three families, four hours from LA, $1,500/family”

Luxury glamping tent at dusk in Sedona red rocks with warm string lights

Sedona

~$1,650/family

Red rock cathedrals, golden light, juniper-scented evenings.

L’Auberge de Sedona

$495/night · hot tub · creekside

Activities

  • Cathedral Rock trail (2h)
  • Devil’s Bridge (2.5h)
  • Slide Rock (2h)

Restaurants

Elote Cafe, Mariposa, The Hudson

“Sedona in mid-October is peak: highs around 78, red rock glowing in late light, cottonwoods starting to turn.”

Learning

The feedback loop closes with every trip.

Feedback on trip cards — which option the group picked, which constraints mattered most, what the trip actually cost vs. the estimate — feeds back into prompt engineering and model selection. Every trip makes the next trip’s research sharper.