# Growth report Human Guide

## What This Is For
Generates a comprehensive 3-month SEO performance HTML report using live DataForSEO data. It gives the agent a clearer input/output frame for growth marketing: what context to ask for, what decisions to make, and what usable artifact to return.

Use this as a human-readable version of the Growth report agent skill. It is meant for marketers, operators, founders, and other non-coders who want the workflow without reading agent-specific implementation instructions.

## When To Use This
- Use this when you need a repeatable process for growth report.
- Use this when the task needs judgment, examples, constraints, or a clear output format rather than a one-off prompt.
- Use this when you want to hand an AI assistant enough context to produce a usable marketing artifact.

## When Not To Use This
- Do not use this when you only need a quick factual answer.
- Do not use this when the work depends on private data you cannot share with the assistant.
- Do not use this as a replacement for legal, compliance, financial, or medical review.

## What You Need Before Starting
- The goal or business outcome you want.
- The audience, customer segment, or market context.
- Any source material the assistant should respect, such as notes, briefs, examples, URLs, or brand guidance.
- Constraints such as tone, length, channel, deadline, region, or approval requirements.
- A clear definition of what a good final answer should look like.

## Step-By-Step Workflow
1. State the job clearly: "Use the Growth report guide to help me with..."
2. Add context: audience, goal, offer, channel, source material, and constraints.
3. Ask the assistant to identify missing inputs before producing the final output.
4. Have the assistant follow the skill-specific guidance below.
5. Review the result against the final checklist and ask for revisions where needed.

## Skill-Specific Guidance
- `baseline_traffic` = `metrics.organic.etv`
- `baseline_keywords` = `metrics.organic.count`
- `baseline_top3` = `metrics.organic.pos_1` + `metrics.organic.pos_2_3`
- For each snapshot store: `month_label` (e.g. "Feb 2026"), `etv`, `year`, `month`
- These become `TREND_LABEL_1..4`, `TREND_ETV_1..4` in the HTML template
- `current_keywords` = `count`
- `current_top3` = `pos_1` + `pos_2_3`
- `current_pos_2_3` = `pos_2_3`
- `current_pos_4_10` = `pos_4_10`
- `current_pos_11_20` = `pos_11_20`
- `current_pos_21_100` = sum of `pos_21_30` + `pos_31_40` + `pos_41_50` + `pos_51_60` + `pos_61_70` + `pos_71_80` + `pos_81_90` + `pos_91_100`
- Prefix `+` for positive values, `-` is automatic for negative

## Decision Points And Nuance
The original skill emphasizes: STEP 0 — COLLECT ALL INPUTS BEFORE DOING ANYTHING, CRITICAL API SETTINGS, STEP 1 — Baseline Metrics, STEP 2 — Current Metrics, STEP 3 — Competitive Landscape, 3a — Current Traffic Snapshot, 3b — Competitor Trend Signals (Historical, Option 1), STEP 4 — Top Content Clusters, STEP 5 — Derive Report Targets (Q2 Card), STEP 6 — Derive Strategic Priority Cards.

Use these questions to steer the work:
- What is the intended audience or buyer?
- What source material must be preserved?
- What should the assistant optimize for: clarity, persuasion, accuracy, speed, creativity, or conversion?
- What examples represent the desired quality bar?
- What should the assistant avoid?

## Common Mistakes
- **All four inputs are mandatory.** Do not make any API calls until all four are confirmed.
- Collect them in a single message using this exact format — ask for everything at once, never
- | `LOCATION` | Accept country name. Default: `United States`. Must be a valid DataForSEO `location_name` (full country name only, never city or region). |
- This is the single most important parameter to get right — never omit it.
- **TARGET_DOMAIN trend for the competitive table** must also use the same START_DATE → END_DATE
- > ⚠️ Never default any competitor to "Stable" without running this calculation.
- > Every trend badge in the competitive table must be derived from real historical ETV data.
- Write naturally — no bullet points inside the paragraphs. All numbers must be real API values.

## Copy-And-Paste Prompt
```text
Use the Growth report human guide.

My goal:
[Describe the business outcome]

Audience:
[Describe who this is for]

Context and source material:
[Paste notes, examples, links, or existing copy]

Constraints:
[Tone, length, channel, timeline, must-include items, must-avoid items]

Before producing the final output, ask me for any missing information that would materially improve the result.
```

## Final Checklist
- [ ] The output matches the original goal.
- [ ] The audience and context are reflected in the answer.
- [ ] Important constraints and source material were preserved.
- [ ] The assistant made the relevant decisions explicit.
- [ ] The final artifact is ready to use, review, or hand to the next person.

## Source
This guide was generated from the infrasity-labs/dev-gtm-claude-skills skill entry for `growth-report`.

## Source Skill Notes
These notes preserve the nuance from the original skill. Use them as supporting reference when the workflow above feels too generic.

# SEO Performance Report Skill

Generates a comprehensive 3-month SEO performance HTML report using live DataForSEO data.
The report covers traffic trends, keyword rankings, top content clusters, competitive positioning,
strategic priorities, and an executive summary — all in the Infrasity brand design system.

---

## STEP 0 — COLLECT ALL INPUTS BEFORE DOING ANYTHING

**All four inputs are mandatory.** Do not make any API calls until all four are confirmed.

Collect them in a single message using this exact format — ask for everything at once, never
ask for inputs one at a time:

---

**If the user has NOT provided all four inputs**, ask:

> To generate the report I need 4 things:
>
> 1. **Target domain** — the site to report on, e.g. `firefly.ai`
> 2. **Competitor domains** — up to 5–6 competitors, e.g. `spacelift.io, env0.com, terraform.io`
> 3. **Date range** — start and end date for the 3-month window *(default: **Feb 20 → May 20, 2026**)*
> 4. **Location** — country for search data *(default: **United States**)*
>
> Which of these do you want to change from the defaults?

---

**If the user has already provided the target domain and competitors** (e.g. "generate SEO report
for firefly.ai vs spacelift.io, env0.com"), confirm the two optional inputs:

> Got it — I'll generate the report for **firefly.ai** vs spacelift.io, env0.com.
>
> Just confirming the defaults:
> - **Date range:** Feb 20 → May 20, 2026
> - **Location:** United States
>
> OK to proceed with these, or would you like to change either?

---

**Input parsing rules:**

| Input | Rules |
|---|---|
| `TARGET_DOMAIN` | Strip `https://`, `http://`, `www.`, and trailing slashes. Store bare domain only (e.g. `firefly.ai`) |
| `COMPETITORS` | Strip same prefixes from each. Accept comma-separated or space-separated list. Min 2, max 6 competitors. |
| `START_DATE` | Parse any human date format → `YYYY-MM-DD`. Default: `2026-02-20` |
| `END_DATE` | Parse any human date format → `YYYY-MM-DD`. Default: `2026-05-20` |
| `LOCATION` | Accept country name. Default: `United States`. Must be a valid DataForSEO `location_name` (full country name only, never city or region). |

**After confirmation, echo back the resolved inputs clearly before proceeding:**

> ✓ **Target:** firefly.ai
> ✓ **Competitors:** spacelift.io, env0.com, controlmonkey.io, scalr.com, terraform.io
> ✓ **Date range:** Feb 20, 2026 → May 20, 2026
> ✓ **Location:** United States
>
> Fetching data now...

---

## CRITICAL API SETTINGS

**Always use `ignore_synonyms: false` on every DataForSEO call.**
Using the default `ignore_synonyms: true` underreports traffic and keyword counts by 30–50%.
This is the single most important parameter to get right — never omit it.

---

## STEP 1 — Baseline Metrics

Call `dataforseo_labs_google_historical_rank_overview` with:
```
target:          TARGET_DOMAIN
location_name:   LOCATION
language_code:   en
ignore_synonyms: false
