---
name: score-text-placement
description: Score a UI moment or sample text-ad line 0-100 across six dimensions (native fit, context, CTA, interruption, trust/disclosure, monetization readiness) with top three improvements. Use when evaluating Siyaqi placement quality, empty states, chat sidebars, or whether copy feels like product instead of a banner.
category: quality
author: Siyaqi
homepage: https://siyaqi.com/skills
---

# Score text placement

Evaluate one **in-product moment** (and optional sample line) for Siyaqi text ads. Output a 0–100 score, per-dimension notes, top 3 fixes, and a fill-honesty callout.

## When to use

“Is this empty state a good ad slot?”, “score this sidebar”, “does this copy feel native?”, QA before integrating, or comparing two placements.

- Revenue math without a mockup → `estimate-text-ad-revenue`
- Ready to wire serve → `integrate-siyaqi-ads`

## Step 1: Input

Ask for:

1. **What is the moment?** (required) e.g. chat sidebar after an answer, zero-results empty state, onboarding tip, loading pause, settings footer, between game levels.
2. **Paste UI copy around the slot** and/or a **screenshot description** (layout, type size, what the user was doing). If they only have a product URL, infer from public pages and say you inferred.
3. **Optional sample ad line + CTA** they would show (or ask Siyaqi AI to draft one for scoring).
4. **Optional vertical:** AI / developer tools · SaaS · Fintech · E-commerce · Games · Health · Education · General.

If they paste PII, ask them to redact. Scoring stays local.

## Step 2: Score 6 × 0–20

Total 0–120, normalize: `round(sum * 100 / 120)`. Score dimensions independently — no halo.

### 1. Native fit (0–20)

Does a one-line text + CTA belong here, or would it read as a foreign widget?

- 0–5: Banner-shaped, competing with chrome, or screaming “ad unit”.
- 6–10: Could work but type/spacing fights the product.
- 11–15: Same voice and density as nearby UI.
- 16–20: Indistinguishable from a product hint until disclosure.

### 2. Context relevance (0–20)

Would a relevant message help the job the user is in?

- 0–5: No intent (pure decoration, random splash).
- 6–10: Weak link (generic “try this app”).
- 11–15: Clear job-to-be-done (empty list → tool that fills it).
- 16–20: The line answers the same question the screen poses.

### 3. CTA clarity (0–20)

Is there one obvious next step without looking like a download button farm?

- 0–5: No CTA, or three competing buttons.
- 6–10: Vague (“Learn more”).
- 11–15: Specific verb aligned with the moment (“Create first project”).
- 16–20: CTA matches both the ad and the surrounding flow.

### 4. Interruption cost (0–20)

Higher score = **less** harmful interruption.

- 0–5: Blocks a primary task, covers content, or fires every keystroke.
- 6–10: Distracting but dismissible.
- 11–15: Quiet secondary region (sidebar, empty, pause).
- 16–20: User is already waiting or scanning; the line is optional.

### 5. Trust & disclosure (0–20)

Sponsored nature is honest without wrecking native fit.

- 0–5: Deceptive (looks like system UI / the product’s own advice with no label).
- 6–10: Ambiguous.
- 11–15: Clear “Sponsored” / advertiser name near the line.
- 16–20: Disclosure + still readable; no fake notifications or dark patterns.

### 6. Monetization readiness (0–20)

Viewability, repeat frequency, and enough surface for a text unit.

- 0–5: Tiny, below fold, or once-ever splash.
- 6–10: Occasional view, poor contrast.
- 11–15: Recurring, readable, one unit per view.
- 16–20: High-intent recurring surface; room for rotation without stacking ads.

## Step 3: Top 3 improvements

Pick highest impact × feasibility, not only lowest scores. Each item: specific change, estimated point lift, why.

## Step 4: Output template

```
## Placement score: [total]/100

Moment: [description]
Vertical: [or unspecified]

| Dimension                 | Score  | Notes |
|---------------------------|--------|-------|
| Native fit                | [ ]/20 | [specific] |
| Context relevance         | [ ]/20 | [specific] |
| CTA clarity               | [ ]/20 | [specific] |
| Interruption cost         | [ ]/20 | [specific] |
| Trust & disclosure        | [ ]/20 | [specific] |
| Monetization readiness    | [ ]/20 | [specific] |

### Top 3 improvements

1. **[Change]** (+[x]–[y]): [how]
2. **[Change]** (+[x]–[y]): [how]
3. **[Change]** (+[x]–[y]): [how]

### Threshold

Siyaqi text units work best at **70+**. Below 55, fix layout before chasing fill.
Your score: [total]/100 — [above | near | below] 70.

### Network context (required)

A high placement score means the **slot is fit for text**, not that demand will fill it today. Siyaqi fill follows live advertiser campaigns. Empty serve (404) is demand, not a failed score.

If they need dollars next: `estimate-text-ad-revenue` with this placement type.

### Next

- Revenue range: `estimate-text-ad-revenue`
- Ship snippet: `integrate-siyaqi-ads`
- Docs: [siyaqi.com/docs](https://siyaqi.com/docs)
```

## Notes for the executing agent

- Be specific (“12px muted caption under the empty illustration”) not “improve clarity”.
- Do not recommend display banners or interstitial videos.
- Disclosure is required; never suggest hiding “Sponsored”.
- Include **Network context** every time.

## What this skill does not do

- Not a brand-safety or malware scan.
- Not live CTR prediction.
- Not an accessibility audit (flag obvious contrast failures in notes only).
