Connected with Orphex Recommended
The skill reads your connected accounts for the right dates. Nothing to export or upload.
Connect freePrioritize Google Ads Search Quality Score component checks by business exposure; treat the score as a keyword diagnostic.
When Search keyword diagnostics need prioritized relevance and landing-page checks.
“Prioritize which Google Ads Quality Score issues to fix first based on spend and conversions.”
A diagnostic review of keyword-level expected CTR, ad relevance, and landing-page experience patterns, tied to business exposure and testable follow-up hypotheses.
Prioritize k1's ad relevance investigation: it has $900 of the $1,100 observed spend (81.82%) and 30 demos at $30 CPA. k2 has a lower score but only $50 exposure; its free budget tool wording warrants checking the actual product/offer fit before score work. No supplied offer definition establishes that it is off-offer.
k3's -- diagnostic is unavailable, not zero. Its observed demo CPA is $15, but the missing diagnostic does not establish excellent or poor quality.
Do not average QS into an account KPI or treat it as the auction input. k1's below-average ad relevance suggests checking query-to-ad alignment and drafting a bounded copy test. Snapshot components and performance dates have different windows, so a causal performance effect is unproven. No promised CPC reduction or score target was invented. No changes applied.
Fictional data. An illustration of the method, not a customer result.
The skill reads your connected accounts for the right dates. Nothing to export or upload.
Connect freeAttach a CSV with the columns below. The template shows the expected shape.
keyword_idRequiredkeywordRequiredquality_scoreOptionalexpected_ctrRequiredad_relevanceRequiredlanding_page_experienceRequiredcurrencyRequiredspendRequiredconversionsRequiredSupply your objectives, conversion definitions, currency, constraints, and approved brand facts once, then reuse the profile across reviews. Leave unknown values explicit.
If an Orphex connector is available, check it before asking for exports. Run capability_search with platform orphex and limit 100; use a read only if that search returns its id, and ask which workspace to use when several are bound. Read controller.catalog then controller.fetch at level keyword for Quality Score, its components, cost and outcomes. If playbook.catalog lists the quality score repair playbook, run it with playbook.run.
Use this skill when asked to diagnose Search keyword Quality Score (QS), explain component patterns, or prioritize ad-group follow-up. QS is a keyword-level diagnostic, not a campaign outcome. Work from Orphex data when the connection below reaches it, and from supplied exports and documents otherwise. Do not treat the review as permission to edit ads, keywords, or landing pages.
If an Orphex connector is available, check it before asking for exports. Run capability_search with platform orphex and limit 100; use a read only if that search returns its id, and ask which workspace to use when several are bound. Read controller.catalog then controller.fetch at level keyword for Quality Score, its components, cost and outcomes. If playbook.catalog lists the quality score repair playbook, run it with playbook.run.
If a read is not returned, this connection cannot reach that Orphex data for the workspace: say so, then use the live platform reads it offers or the supplied exports. An absent, refused or empty read is not evidence of zero, none or healthy. Describe each read with capability_describe before run_read, keep date_end no later than yesterday, disclose request adjustments, and name each number's source, workspace and window. This skill's evidence rules still govern any guide, insight or playbook label, and no read authorizes account changes. Ask the user only for what is still missing.
Request keyword ID/text, campaign and ad-group IDs, match type, current and historical QS, the three component statuses, date or segment, impressions, clicks, cost, conversions/value, status, final URL, and relevant query or ad evidence. Ask for account timezone, currency, conversion action and attribution window. Include the current and historical period separately because the score and its statuses are benchmark diagnostics, while performance rows may cover a different date range. Historical QS components are evaluated against other advertisers whose ads showed for the exact same search over the preceding 90 days; do not imply that a 7-day performance export measures the same window. See Google's Quality Score guide.
If QS is shown as a dash, missing, or absent, record it as “not available / insufficient evidence,” never zero or poor. Do not fill missing component status from the numerical score. If keyword-level data or the period is absent, explain the limit and request it rather than inferring ad-group QS.
Keep expected CTR, ad relevance, and landing-page experience as separate status fields. The score runs from 1–10 at the keyword level; Google describes it as diagnostic, says it is not a KPI to aggregate, and says it is not an input in the ad auction. Do not average QS across keywords, add it to performance, set a target score, or promise that raising it will lower CPC or improve rank.
Group rows only when a shared cause is plausible from supplied evidence: same ad group and query theme for ad relevance, shared final URL or page template for landing-page experience, or a coherent set of queries for expected CTR. Prioritize clusters by actual spend, eligible impressions, conversions/value, and the business goal, not by lowest score alone. Report raw counts beside rates and keep zero, missing, and lagged outcomes distinct. Low volume and unavailable components reduce confidence.
For below-average expected CTR, inspect the actual queries, audience/location/time segments, ad message and observed click-through rate; suggest checking message fit before changing bids. For below-average ad relevance, compare search intent with keyword grouping and the ads that could serve; propose a tighter theme or more relevant copy only when the rows support it. For below-average landing-page experience, compare the final URL and page evidence with the query and promised offer; request page speed, mobile, navigation, or content evidence when those facts are not in the export. A component status alone does not identify the cause.
For “Average” or “Above average,” do not claim the rest of the experience is strong: QS does not capture every quality factor. Avoid treating device, location, time, or creative changes as causes without a controlled test or a documented before/after that addresses confounders. Separate observed facts, likely diagnostic explanations, and untested hypotheses.
State scope, period, source, currency, outcome definition, and mismatched QS/performance windows. Provide an action-cluster table: component/status; affected keywords and IDs; representative queries/ad/page; spend, eligible impressions, clicks, conversions/value; evidence; hypothesis; proposed review or test; confidence; and what evidence would confirm it. Include unavailable rows explicitly. Link each statement to the source file and row or segment.
Fictional example: three keywords on one landing page show below-average landing-page experience; together they have $900 spend and four leads in a complete 30-day USD export. Their QS values differ, so do not report an average score. Recommend reviewing the shared page against the three query intents; the pattern supports a page-relevance hypothesis, not proof that the page caused lead cost.
Any later account edit requires explicit authorization for the account, exact keywords, and change. This skill authorizes analysis only.
State whether the result is complete, partial, or blocked for the requested decision. Link material findings to actual supplied rows/sources and separate observed metrics, hypotheses, and estimates. Lead with a short business conclusion, then evidence, uncertainty, and the next measurable check. A data export or installed skill does not authorize account changes.
For the supported arithmetic only, optionally run the bundled calculator with Python 3: python3 scripts/marketing_math.py weighted-ratio < calculation.json. Read its input mapping in the input contract before preparing JSON. It reads JSON, not CSV directly. If Python or the requested method is unavailable, show a reproducible alternative calculation or mark it unsupported; do not report an uncomputed result as verified.
See the recorded checks, compared runs, results, and limits for v2.1.0. Example reviews illustrate the method; they do not guarantee account results.
Read the evaluation report