Skip to main content
Select, validate, dedupe, tag, and execute a cycle’s keywords with Pi. You run this at the start of every cycle (and on the first cycle, seeded from the sales call — see Starting the first set of keywords): it turns a client’s call context into a concrete, de-conflicted keyword plan, the input to a month of content.
Theory behind this: we target winnable SERPs and strategic fit rather than raw search volume. See Part 1 §1.4 SERP cliff and §1.5 Intent & cannibalization.

Inputs checklist (before you start)

  • Granola transcript + enhanced notes from the monthly call
  • Post-call notes, Slack messages, or docs from the client
  • Previous month’s review docs (if not the first cycle)
  • Access to Pi (memory already set up for this account)
  • Any keyword lists already teased to the client (Notion proposal, strategy deck, etc.)
  • (Optional) Keywords from Google Search Console

Step 1 — Feed Pi the call context

  • Have Granola running during the call
  • Export the transcript + enhanced notes afterward
  • Collect post-call materials (Slack/email comments, client docs, previous reports)
  • Paste everything into Pi with the prompt below
  • Confirm Pi saved it to memory
What Pi extracts: which verticals/angles the client wants to push, page targets, product updates (live/delayed/changed), content corrections or flags, new USPs or positioning angles, keywords the client explicitly mentioned, and what’s blocked or on hold.

Step 2 — Draft strategy + tag keywords

  • Prompt Pi with the target keyword count + cycle constraints
  • If you have a pre-existing list, include it and clarify these are candidates only (no landing pages created yet)
  • Review Pi’s draft: does it match what the client said? any emphasized verticals missing? any keywords for products/features that aren’t live yet?
  • Push back or add anything obvious before validation
Standard prompt:
With a pre-existing keyword list:

Step 3 — Validate, deduplicate, check for conflicts

  • Send Pi the validation prompt (one prompt covers it all)
  • Review the audit: removals, additions, recommendations for underperforming pages
  • Flag any experimental angles you want to keep
  • Approve, push back, or ask for alternatives on specific keywords
  • (Optional) If the client wants a new angle, send the exploration prompt
Full validation:
Note the last line: ask Pi to confirm its strategy before it acts. That “check with me before you start any actions” habit is standard across operators; it keeps you in control of destructive changes. See driving Pi well: 2.0.3.
Explore experimental angles:

Step 4 — Approve and execute

  • Tell Pi to execute the approved changes
  • Confirm the execution summary matches what you agreed
What Pi does: removes/retags keywords that failed validation, adds new keywords from exploration, applies cycle tags and priorities, switches keywords on underperforming pages (if approved), and writes/updates the strategy doc to /reports/. (See VFS filing: 2.0.4.)

Step 5 — Confirm final state

  • Ask Pi for a final summary
  • Run the final checks:
    • Keyword count is right (asked for 40, got 40)
    • Every vertical the client mentioned has keywords
    • Deferred keywords are tagged for the correct future cycle
    • No keyword overlaps an existing landing page
    • In the keyword content planner: no blogs/LPs already generated for these keywords, and no keywords too similar to each other (e.g. “ai translation” vs “ai translator”)
    • Strategy doc exists in /reports/

Edge cases — quick lookup

Reference — why Pi recommends removing a keyword

Reference — why Pi recommends adding a keyword

Reference — the signal hierarchy

When you have more candidates than slots, decide in this order:
Volume comes last, not first. That’s deliberate; see Part 1 §1.4.

Reference — keyword survival gates

Exception: client-provided keywords bypass the SERP-cliff gate on entry.