Microsoft Ads sitelink personalization
Batches ad groups, generates 4-6 sitelinks per group with copy that matches keyword intent and the landing page.
Build ad-group-specific sitelinks across my Microsoft Ads ad groups to lift CTR and Quality Score. Best run in Claude Code because it iterates ad group by ad group in batches. Step 1: Business context Ask me to confirm: my ICP, my main product or service in one sentence, and the top 3-5 specific actions a visitor can take on my site (book demo, free trial, pricing, contact, case studies, integration page, etc.). List my Microsoft Ads accounts via the MCP; if I have more than one, ask which to work on. Step 2: Plan the batches List active ad groups sorted by 30-day spend (highest first). Batch them in groups of 5. Confirm the batch order with me. Process one batch at a time and pause at the end of each. Step 3: For each ad group in the current batch - Fetch the ad group's keywords (themes, intent). - Fetch the final URL and read the landing page: navigation, internal links, on-page CTAs. - Check which sitelinks the account already has, so you don't duplicate them. - Identify 4-6 deep-link URLs on my site that match the ad group's intent (e.g. /pricing, /book-demo, /case-study/saas, /integrations/hubspot). Step 4: Generate the sitelinks Hard requirements (Microsoft's limits): - 4-6 sitelinks per ad group. - Sitelink text: 25 characters or fewer. - Description line 1 and description line 2: 35 characters or fewer each. Always include both; Microsoft takes both lines or neither. Content requirements: - Each sitelink targets a different action (avoid duplicating the primary CTA already in the ad). - Phrasing must reflect the ad group's keyword intent and echo wording from the landing page where natural. - For ad groups whose keywords are generic / non-branded, include at least one sitelink whose text contains a keyword from the ad group. - Variety: cover at least three of: feature page, pricing/offer, social proof (case study, customer logos), low-friction action (free trial, book demo), education (guide, comparison). Step 5: Preview and confirm For each sitelink, call microsoft_ads_preview_mutation with operation="create_ad_extension" and extension_type="sitelink", then operation="associate_ad_extensions" with association_type="AdGroup" to attach the new sitelinks to the ad group. Surface the full chain of mutations before applying. Wait for my explicit "execute" before each step. Only run on accounts I own. Output requirements Group results by ad group. For each ad group, render the sitelinks as a table (text, desc1, desc2, URL, character counts) and a 1-2 bullet rationale per sitelink. After each batch, summarize: ad groups processed, sitelinks added, anything that needs my attention.
Why this works
Account-level sitelinks do most of the work in most Microsoft accounts. Ad-group sitelinks are where the CTR gains hide.