← Seal CopilotCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Seal Copilot
Snapshot Sep 30, 2026 · 23:13 UTC · version 1.11.0
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Analyze the conversion funnel in Sealmetrics — find where users drop off and why. Trigger on: \"analyze my funnel\", \"where do users drop off\", \"cart abandonment\", \"checkout analysis\", \"booking funnel\", \"análisis de funnel\", \"why don't visitors convert\", or questions about steps between visit and purchase/booking.\n",
"included_files": [
{
"relative_path": "examples/output.md",
"size_in_bytes": 1732
}
],
"name": "funnel-analysis",
"skill_md_contents": "---\nname: funnel-analysis\ndescription: >\n Analyze the conversion funnel in Sealmetrics — find where users drop off\n and why. Trigger on: \"analyze my funnel\", \"where do users drop off\",\n \"cart abandonment\", \"checkout analysis\", \"booking funnel\", \"análisis de\n funnel\", \"why don't visitors convert\", or questions about steps between\n visit and purchase/booking.\nshort-description: 'Find where the conversion funnel leaks. Use for \"funnel analysis\", \"where do users drop off\", \"checkout abandonment\", \"dónde abandonan\", \"conversion path\".'\n---\n\n# Funnel Analysis\n\nBefore writing your answer, read `examples/output.md` in this skill directory\nand match its density, structure and tone. It is the reference for what a good\nrun of this skill looks like.\n\nFind the weakest funnel stage and isolate its cause. Budget: ≤10 calls.\nVertical playbooks: `skills/seal-copilot/references/ecommerce-playbook.md`\n(stores) and `skills/seal-copilot/references/hotels-playbook.md` (hotels).\n\n## Procedure\n\n1. `get_funnel(period=30d)` — the configured funnel with per-step dropoff.\n It answers `{ error: \"…\" }` as JSON when no funnel is configured; check\n for `error` before reading `steps`, and build the funnel from\n microconversions instead.\n2. `list_microconversion_types` — map the customer's event names to\n canonical stages (product_view/add_to_cart/start_checkout/purchase for\n stores; search/room_view/booking_start/booking for hotels).\n3. Compute stage-to-stage ratios; identify the **weakest stage** relative\n to the site's own history (`compare=previous` via\n `get_microconversions`).\n4. Segment the weakest stage to isolate cause (1 call).\n `get_microconversion_details(conversion_type=<stage>)` returns\n `by_device`, `by_source`, `by_country` and `by_landing_page` together, each\n with `count` and `percentage`. Read all four from the one response.\n5. Triangulate per the methodology: gap only on mobile → UX; gap\n everywhere → offer/price/shipping; gap in one country → payment or\n language.\n6. **Per-SKU funnel** (ecommerce, optional, ≤2 calls). If the weakest\n stage is `view_item → add_to_cart`, the leak is product-specific —\n run `get_property_breakdown` on the product identifier for both\n stages and surface the worst SKUs. Hand off to the `product-friction`\n skill for the full per-SKU treatment.\n\n## Output format\n\n1. **Funnel table:** stage → volume → step CR → change vs previous.\n2. **Weakest link:** one sentence naming the stage and the segment where\n the gap concentrates, with numbers.\n3. **Hypothesis ranked list (max 3):** each with the evidence that supports\n it and a concrete test or fix.\n4. **Impact:** conversions recovered if the weak stage matched its\n best-segment rate, in € using site AOV.\n5. **Verify:** re-run plan after the fix ships.\n\n7. **Entry-path check** (1 call, optional). `get_landing_pages_by_content_group(\n period=30d)` — if one content group supplies most entrances but almost none\n of the conversions, the funnel problem starts before the first stage. This\n is the common shape on blog-heavy and SaaS sites; see pattern 14.\n\nIf the site has no funnel configured and no microconversions, say so and\noffer the `setup-audit` skill instead of improvising. If microconversions\nexist but their property naming is unknown, suggest `property-explorer`\nas a one-time first step.\n\n---\n\nLog the run in `<state-dir>/<site_id>/runs.jsonl` with exactly these fields\nand no others: `ts` (ISO timestamp, UTC), `skill`, `calls` (the number of\nSealmetrics calls you made, counted), `budget` (this skill's documented\nceiling, a number — `10` here), `verdict` (one of `on_track`, `watch`, `act`,\n`kpis_only`, `refused`, `error`, or the score for an audit), `scheduled`\n(boolean), `notes` (one line). The first real audit wrote `calls_used` and a\nfree-text verdict because this footer said \"calls used\" in prose; the field\nnames are the contract. Skip silently if the path is not writable.\n"
}SHA-256 of public snapshot: bb26b0d17a4b703c36ec352fcc5e4a941f00291dfdb7fea60976e15d39f1d8ac