> ## Documentation Index
> Fetch the complete documentation index at: https://agents.concierca.ch/llms.txt
> Use this file to discover all available pages before exploring further.

# Business Question Recipes

> Natural questions mapped to tool-and-signal flows and answer framing — the recipe library.

Each recipe maps a natural question to a **tool/signal sequence** and an **answer framing**. Signal names appear here as the agent-facing vocabulary — the user never has to say them. For advisory recipes, keep the **evidence → playbook → recommendation** shape.

<Note>
  Signal names below are illustrative of the *kind* of signal used. Always confirm the live catalog with `vertical_legend` — grain, window, and availability are read at answer time, never hard-coded.
</Note>

## Understand one entity

### Brand deep dive

**Flow** — `vertical_resolve` → `vertical_card` → read `data_coverage` and `analysis_volume` first → then walk the signal groups: growth · content · paid · launches · reviews · retail · strategy · weaknesses.

**Framing** — open with coverage ("here is how much we actually observe of Brand A"), then the picture per group, then the synthesis. Do not overclaim on thin coverage.

### "Is it growing?"

**Flow** — `vertical_card` (or `vertical_search` by signal) reading growth signals: `growth_30_60_90`, `growth_trajectory_class`, `growth_consistency`, `follower_growth`, `engagement_momentum`.

**Framing** — categorize into **accelerating / steady / stalling / shrinking**. Use the trajectory class and consistency together — a single up-month is not "accelerating".

### "Overall trend" for one brand

**Flow** — bundle across organic + paid + engagement + `trend_break` + `streak`. Never reduce it to one arbitrary score.

**Framing** — a multi-dimensional read: "organically X, on paid Y, engagement Z, with a recent trend break in W". The trend is the *pattern across* signals, not any single number.

### "What changed recently?"

**Flow** — a change-detection question: `trend_break`, `record_event`, `streak`, `follower_drop_alert`, `growth_spike_event`.

**Framing** — lead with the detected changes and when they occurred. Absence of a change signal means "no tracked change", not "nothing happened".

### "Where is it vulnerable / what next?"

**Flow** — `vertical_card` weaknesses + strategy signals, then `vertical_knowhow` for the interpretation playbook.

**Framing** — evidence → playbook → recommendation. Keep the recommendation traceable to a retrieved weakness.

## Discover across the market

### "Which brands are growing / weak / changed direction"

**Flow** — `vertical_search` filtered by `signal_type`, then categorize by class/band (e.g. trajectory class, warning-sign flags, direction-change events).

**Framing** — group into buckets, **avoid fake ranks** — a band is a band. "These sit in the accelerating band", not "ranked #1–#5".

## Compare entities

### Competitive comparison

**Flow** — `vertical_resolve` (each) → `vertical_compare` with aligned `signal_types`.

**Framing** — start with **coverage differences**. Do not punish a brand for a **missing** signal — distinguish "not tracked" from "weak". Avoid declaring a fake overall winner unless the user defines the criterion.

### "Who is best?"

**Flow** — ask back **"best at what?"** first. Without a criterion, return a **multidimensional** read via `vertical_compare`.

**Framing** — one winner per dimension is honest; a single overall "best" is only valid once the user names the criterion.

## Analyze channels

### Instagram / content / collaborations / Stories

**Flow** — `vertical_card` with `channel=` set to the relevant channel, reading the channel's content, collaboration, and Stories signals.

**Framing** — describe cadence, format mix, and collaboration pattern; keep Stories (ephemeral) distinct from feed content.

### Meta Ads analysis

**Flow** — `vertical_card` / `vertical_search` over the paid-media signals: scale, direction, creative, funnel, automation, geo, risk.

**Framing** — **synthesize**, do not dump every metric. Preserve **reporting-lag caveats**: a recent, incomplete reach figure is *not* a confirmed collapse. And remember EU reach is transparency reach, not customers.

### Targeting

**Flow** — separate the two questions: **declared intent** (who the ad says it targets) vs. **actual reported reach** (who it reportedly reached).

**Framing** — answer them separately; do not conflate a targeting declaration with an outcome.

## Perception

### Reviewer perception vs. audience voice

**Flow** — `review_sentiment` = reviewer/editor perception; `audience_voice` = comment-section reaction.

**Framing** — keep them separate — **don't substitute one for the other**. Reviewers and the audience can disagree, and that gap is itself a finding.

### Pricing / aftermarket / founder / retail footprint / retail gap

**Flow** — `vertical_card` reading the pricing, aftermarket, founder, retail-footprint, and retail-gap signals.

**Framing** — report each as its own evidence line; retail gap points to where distribution is thin.

## Analyze markets

### Market expansion

**Flow** — `retail_gap` → build a shortlist → `vertical_benchmark` `market_density` (with `dimension_filter{country}`) → geographic playbook via `vertical_knowhow`.

**Framing** — **never expand on density alone.** Density is paid-media competitive density, not opportunity; combine it with the retail gap and the playbook.

### Industry trends

**Flow** — `vertical_benchmark` `industry_pulse` (and trend-cluster benchmarks), **not** a few brand cards.

**Framing** — describe the market-level pattern; do not generalize the industry from a handful of entities.

## The advisory shape

For any recommendation recipe, hold the chain visible:

> **Evidence (retrieved signals) → Playbook (know-how) → Recommendation.**

## Related

* [START HERE](/for-agents/vertical/start-here) — the intent library these recipes expand.
* [AI Operating Rules](/for-agents/vertical/operating-rules) — the grounding rules every recipe obeys.
* [Periods, Windows & Confidence](/for-agents/vertical/periods-and-confidence) — why "recent incomplete reach ≠ collapse".
* [Tool Reference](/for-agents/vertical/tools) · [Vertical tool list](/for-agents/vertical)
