
A Shopping feed can fail in ways that look like a campaign problem.
A diagnostic may name an issue. A product export may show spend. A store snapshot may show a price that no longer matches the feed. Each export answers part of the question.
This pack keeps those questions separate first, then joins them in one ranked report.
What you paste in
Start with a dated feed CSV. Add a Merchant Center diagnostics export with exact issue code and title. Add a dated store snapshot for price and availability. Add product performance by item ID.
For economics, add cost of goods, shipping cost, payment fee, revenue and ad spend as totals for the same period and currency. If your costs are per unit, multiply them by units sold first. The helper has no units column.
No export becomes a different export just because a field is missing. A missing price stays missing. An issue without an exact code stays unmapped.
Eight skills, one fix queue
1. Check Feed Data Quality
Checks field fill rates, duplicate product IDs and title patterns from the supplied feed rows. It labels a defect only against your own required-field list, with any category or market exemptions. Without that list it reports coverage only. A blank GTIN can be a legitimate absence, so it is not called a violation.
2. Triage Exact Disapproval Codes
Groups diagnostics only when code and title exactly match. Disapproved, limited, warning and unknown statuses stay separate, in that order.
3. Compare Price and Stock Snapshots
Matches dated feed and store snapshots by sellable item ID. When a sale window covers both snapshots, the sale price is compared, not the regular price. Prices are compared only in the same currency and tax basis, and only when the snapshots are no further apart than the tolerance you set. When the sale window, tax basis or timing is unknown, the row is marked “cannot assess”, not a mismatch.
4. Check Product IDs and Variants
Checks duplicate item IDs, shared item group IDs, variants with identical attributes and supplied identifiers. It keeps variant rows separate instead of merging products with similar titles. A row with variant attributes but no group ID is marked for review, not called a defect.
5. Check Product Economics
Calculates contribution after supplied product cost, shipping, payment fee and ad spend, all as period totals. A small Python helper rejects incomplete arithmetic.
6. Triage Spend by Product
Ranks products with spend at or above your floor and zero recorded conversions. Rows still inside your conversion lag wait in a watch list. Rows below the floor are counted, not flagged. A blank conversion count leads to no conclusion. The skill never picks the floor or the lag for you.
7. Build Custom Labels
Creates a label plan only from supplied business facts, such as season, stock state or a documented margin band. It does not invent tiers.
8. Write a Prioritised Fix Report
Takes the prior findings and sorts them: blocked serving first, customer-facing accuracy next, then money (economics and spend), then structure and data quality, then labels. Money findings from different periods stay tied instead of being compared. Each item keeps its evidence and owner, or says owner unknown. Rows marked “cannot assess” or “no conclusion” go to a missing-data list, not the ranking.
A small arithmetic check
Product economics is easy to state and easy to misread when one cost is absent.
The helper uses this formula:
revenue - cost of goods - shipping cost - payment fee - ad spend
A worked fixture produces three rows. One product has a negative contribution and spend with zero recorded conversions. Another has a negative contribution despite one recorded conversion. Both need different follow-up data. The helper only marks zero-conversion spend; whether that product is investigated depends on your spend floor and conversion lag in the spend skill.
The pack also includes synthetic worked examples for price and stock and for spend triage. In the price example, a shirt listed at 29 with an active sale price of 24 matches a store price of 24. That is not a mismatch.
Start with the export you already have
Have diagnostics? Run the exact disapproval triage. Have a sale or stock update? Compare the two snapshots. Have product performance and costs? Run economics first.
The final report works when the supporting exports exist. When they do not, it writes the missing data instead of producing a made-up fix plan.
Install locally
From the unpacked pack directory, run:
bash scripts/install.sh "$HOME/.claude/skills"
Installer copies eight self-contained skill folders, including each skill’s thresholds, helper, worked examples and sample files. It stops rather than overwriting an existing skill folder. Restart the Claude session, then paste the export requested by the skill you need.
Use a test export before real account data. Remove customer information and credentials from anything you paste into an AI tool.
What this does not decide
A product with spend at or above your floor, zero recorded conversions and a finished conversion lag is an investigation flag. It is not proof that an item caused wasted spend. A diagnostic title is evidence of what the account reported. It is not permission to guess why Google applied it.
The skills prepare a clear queue. A person still checks the feed source, store values and campaign decision.