CtrlK
BlogDocsLog inGet started
Tessl Logo

apple-search-ads

When the user wants to set up, optimize, or scale Apple Search Ads (ASA) campaigns — including keyword bidding, match types, campaign structure, Creative Product Sets, CPP routing, and ROAS optimization. Use when the user mentions "Apple Search Ads", "ASA", "Search Ads", "Search tab ads", "Today tab ads", "CPT", "TTR", "Search Match", "exact match", "broad match", "CPP in ads", "ASA bidding", or "Search Ads budget". For Meta/Google UAC/TikTok paid UA, see ua-campaign.

70

Quality

85%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

71%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, domain-dense operational guide with concrete bid numbers, thresholds, formulas, and checklists that make it immediately actionable. Its weaknesses are the total absence of progressive disclosure — everything, including output templates and benchmark tables, is inlined in one ~200-line file — plus a non-executable pseudo-API block and a few rationale passages that assume Claude needs background it doesn't.

Suggestions

Move the detailed reference material — the metrics/benchmarks table, the campaign-audit output template, and the weekly/scaling checklists — into files under references/ (e.g. references/benchmarks.md, references/output-templates.md) and replace them with one-line pointers, keeping SKILL.md as a lean overview.

Make the Appeeky API calls genuinely executable in their bash fence (full curl command with base URL and auth header) or drop the code fence and describe them as plain endpoint signatures.

Trim explanatory background such as the 'Why ASA Is Different' bullets and the 'Why this works' rationale under CPP routing to a single line each, trusting Claude to infer the reasoning from the numbers.

DimensionReasoningScore

Conciseness

The body is largely dense and operational — tables of bid ranges, signal→action pairs, and checklists with almost no filler. However, sections like "Why ASA Is Different" (five bullets of platform rationale) and "Why this works: Users searching 'yoga app' see yoga screenshots instead of generic app screenshots" explain background Claude does not need to act. This is efficient with minor over-explanation that could be trimmed (level 4), not the 'mostly efficient but includes some unnecessary explanation' of level 3, since the padding is confined to a few short passages.

4 / 5

Actionability

Mostly executable guidance: specific starting bids ("start at $2–5", "$0.80–1.50"), a formula ("Target CPT = Target CPI × Historical CVR"), benchmark thresholds ("TTR > 5% strong", "ROAS... target 150%+"), a UI setup path, and a fill-in output template. The one notable gap is the Appeeky block fenced as ```bash but written as `GET /v1/keywords/metrics?keywords=...`, which is not executable — no curl command, base URL, or auth handling. Concrete commands with minor gaps matches level 4 rather than the fully copy-paste-ready level 5, and is well above the pseudocode level of 3.

4 / 5

Workflow Clarity

A clear optimization workflow is sequenced ("Use Search Match + broad in discovery. Mine the search terms report weekly. Move top performers to exact match in a separate campaign with higher bids") with supporting checklists, and the scaling checklist acts as a gating checkpoint ("Before increasing budget: CVR > 30%..."). Checkpoints are threshold-based and implicit rather than explicit validate-then-proceed loops, which keeps it at level 4 instead of level 5; it is not a destructive/batch operation, so the level-3 cap does not apply.

4 / 5

Progressive Disclosure

The body is a single ~200-line file with no bundle (no references/, scripts/, or assets/) and no pointer structure at all. Sections are clearly headed and tables are readable, but content that plausibly belongs in separate reference files — the full output-format template, the metrics/benchmarks table, and the weekly/scaling checklists — is inlined, and the under-50-line simple-skill exception does not apply. This sits between the level-3 anchor (content that should be separate is inline) and level 4 (most content appropriately placed), and at 200 lines with zero reference structure it falls just below that midpoint.

3 / 5

Total

15

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: concrete capability enumeration, an explicit 'Use when' clause with a comprehensive list of natural trigger terms including synonyms and abbreviations, and explicit boundary guidance that routes other paid-UA platforms to a sibling skill. No vague fluff or over-claims; every phrase earns its place.

DimensionReasoningScore

Specificity

The description enumerates multiple concrete capabilities — "set up, optimize, or scale Apple Search Ads (ASA) campaigns — including keyword bidding, match types, campaign structure, Creative Product Sets, CPP routing, and ROAS optimization" — giving comprehensive, not minor-gapped, coverage. This matches the level-5 anchor (multiple specific concrete actions, comprehensive coverage) rather than level 4, which reserves minor gaps in coverage.

5 / 5

Completeness

It explicitly answers both "what" (set up/optimize/scale ASA campaigns with enumerated capability areas) and "when" ("Use when the user mentions 'Apple Search Ads', 'ASA'...") with concrete trigger phrases. This is a direct match for the level-5 anchor example; level 4 would require the 'when' clause to be less explicit, which it is not.

5 / 5

Trigger Term Quality

It lists an extensive set of natural terms a user would actually say, including synonyms, abbreviations, and platform jargon: "Apple Search Ads", "ASA", "Search Ads", "Search tab ads", "Today tab ads", "CPT", "TTR", "Search Match", "exact match", "broad match", "CPP in ads", "ASA bidding", "Search Ads budget". This mirrors the level-5 anchor pattern (comprehensive coverage including synonyms and variations).

5 / 5

Distinctiveness Conflict Risk

The niche is unambiguous (Apple Search Ads only, the only ad platform placing ads natively in the App Store) with distinct trigger terms, and it explicitly delegates overlapping territory — "For Meta/Google UAC/TikTok paid UA, see ua-campaign" — actively minimizing conflict risk with the closest neighboring skill. Clear niche with distinct triggers and minimal conflict risk is the level-5 anchor.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
Eronred/aso-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.