aa-conversion-funnel-a…
Analyzes a multi-step conversion funnel to find where visitors drop off and which steps have…
Analyzes a multi-step conversion funnel to find where users drop off and which steps have the worst leakage. Use this skill when someone describes a journey or funnel and asks about conversion rates, drop-off, fallout, or step completion. Trigger for phrases like "analyze our
$ npx -y skills add adobe/skills --skill cja-funnel-health-check --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/cja-funnel-health-checkContext preview
The summary Claude sees to decide when to auto-load this skill.
Analyzes a multi-step conversion funnel to find where users drop off and which steps have the worst leakage. Use this skill when someone describes a journey or funnel and asks about conversion rates, drop-off, fallout, or step completion. Trigger for phrases like "analyze our
name: cja-funnel-health-check description: > Analyzes a multi-step conversion funnel to find where users drop off and which steps have the worst leakage. Use this skill when someone describes a journey or funnel and asks about conversion rates, drop-off, fallout, or step completion. Trigger for phrases like "analyze our onboarding funnel," "where are users dropping off," "what's our checkout conversion rate," "funnel analysis," "show me fallout between these steps," or "which step loses the most users." license: Apache-2.0 metadata: author: Adobe version: "1.0"
Turn a plain-English funnel description into a quantified step-by-step conversion analysis. The output identifies the biggest leakage point in the funnel and provides dimension-based breakdowns to show which audience or channel has the worst drop-off.
Funnel health checks are most valuable when a team suspects a specific step is broken but hasn't quantified it. This skill does the quantification in a single conversation turn.
---
---
1. Call `findDataViews` to list available data views. 2. If the user hasn't specified a data view, present the list and ask which to use. 3. Call `setDefaultSessionDataViewId` with the chosen ID. 4. Ask the user to define the funnel stages if not already specified (e.g., "What are the steps in the funnel you want to analyze?").
Extract the step sequence from the user's plain-English description:
Each step must resolve to a measurable condition in CJA. A step can be:
If any step is vague (e.g., "checkout" without a page name), ask one question: > "For the 'Checkout' step — should I look at people who visited a page > containing 'checkout' in the URL, or those who triggered a specific event > like 'Cart Add'?"
Do not ask more than one clarifying question at a time.
For page-based steps, call `searchDimensionItems` to find the exact dimension values that match the step name. First call `findDimensions` with a semantic search like `"page name url"` to confirm the correct dimension ID — in most CJA data views this is `variables/web.webPageDetails.name`, not `variables/page`:
searchDimensionItems( dimensionId: "variables/web.webPageDetails.name", searchAnd: "<step page name>", startDate: "<period start>", endDate: "<period end>", page: 0, limit: 10 )
Present matches to the user if there are multiple candidates: > "I found these pages matching 'checkout': /checkout/start, /checkout/payment, > /checkout/review. Should I use '/checkout/start' as the entry to the checkout > step?"
---
For each funnel step, construct an ad hoc segment that filters to visitors/sessions that reached that step. Then run a report measuring the base metric (usually Unique Visitors or Sessions) with that segment applied.
A "reached step N" ad hoc segment is:
cross-visit journeys)
Run one `runReport` per step with the ad hoc segment applied. The `adhocSegments` parameter takes fully-formed CJA segment definition objects — NOT a simplified shorthand. The correct structure is:
runReport(
dimensionIds: "variables/web.webPageDetails.name",
metricIds: "metrics/visitors",
startDate: "<period start>",
endDate: "<period end>",
page: 0,
limit: 1,
adhocSegments: [{
"func": "segment",
"version": [1, 0, 0],
"container": {
"func": "container",
"context": "visitors",
"pred": {
"func": "streq",
"val": { "func": "attr", "name": "variables/web.webPageDetails.name" },
"str": "<step page value>"
}
}
}]
)Use `context: "visitors"` (person-level) for cross-visit funnels. Use `context: "visits"` (session-level) for within-session funnels. The metric value comes from `summaryData.filteredTotals[0]` in the response.
The dimension and value used in the predicate should match what was found via `searchDimensionItems` in Phase 1 — use the exact `value` string returned.
**Important**: Each step uses a cumulative filter — measure "visitors who EVER reached this step in the period," not "visitors who ONLY visited this page." This produces the classic funnel waterfall.
Capture `stepCount[i]` for each step i from 1 to N.
---
For each step-to-step transition:
Overall funnel:
visitors lost
---
Repo: adobe/skills
Analyzes a multi-step conversion funnel to find where visitors drop off and which steps have…
Generates a concise, executive-ready performance summary covering key metrics, trends, and…
Produces a compact KPI digest showing how key metrics changed over a period and what's…
Compares the performance of two or more audience segments across key metrics side by side.…
Identifies which items (pages, campaigns, products, channels, regions) had the biggest…
Comprehensive dimension analysis and reporting for CJA. Use this skill whenever the user…