# SerpDad documentation (full text) > Every page of the SerpDad docs in one file. Source: https://serpdad.com/docs/ --- # SerpDad documentation URL: https://serpdad.com/docs/ > What SerpDad is, who it is for, how the Plan, Write, Measure, Improve and Workflows loop fits together, and where to start reading. **In short:** SerpDad turns a list of keywords into a page plan: which pages to build, which existing pages to improve, and why. Every call it makes comes with a receipt, which is the evidence behind that call. You bring your own provider keys, so you see every provider cost before anything runs. ## What SerpDad is SerpDad is an SEO planning and content tool. It reads the top 10 Google results for each of your keywords and counts how many results two keywords share. Keywords that share enough results go on one page. Each keyword gets exactly one owner page, so no two planned pages chase the same keyword. From that plan, SerpDad writes briefs for writers, helps draft articles only from sourced material, and tracks what happens after you publish. SerpDad never publishes to your site. It stages drafts for a person to review. ## Who it is for - **SEO and content leads** who own a site's organic plan and need a page list they can defend. - **Agencies** that run plans, briefs and reports for many clients. - **Writers and editors** who need one self-contained brief and a clear sign-off step. SerpDad works best for sites that already publish, have pages in Google Search Console and pay for content. ## The loop SerpDad is built around one loop. Each step feeds the next. | Step | What you do | Where in the app | |---|---|---| | Plan | Import keywords, approve the estimate, run the plan, answer the few calls the data cannot settle | Plan hub: Import, Plan, Review, Topical map, Parked | | Write | Read briefs, check claims, draft, verify and sign off articles | Write hub: Briefs, Drafts, Fact library | | Measure | Connect Search Console, track ranks, check AI Overview citations, build reports | Measure hub: Results, Rank tracking, AI visibility, Competitors, Report | | Improve | Work the content audit, refresh decaying pages, fix links | Improve hub: Content audit, Decay and refresh, Site pages, Internal links, Outgoing links | | Workflows | Turn the steps above into scheduled jobs and custom workflows | Jobs hub: All jobs, Pick a job, Clients, and Advanced workflows | ## The rules SerpDad keeps - **One keyword, one page.** A plan that would give a keyword two pages fails instead of shipping. - **Receipts on every call.** The receipt shows the top 10 results, the overlap, the fetch date and which key paid. - **Estimate before the click.** Nothing that spends money on your provider accounts runs until someone approves it. - **No invented facts.** Every claim needs a source and a person's check. - **Never publishes.** WordPress, Webflow, Shopify and Google Docs get drafts only. - **No ranking promises.** SerpDad describes what it found. It never says it caused a ranking change. ## Pick where you are **New to SerpDad** - [Quickstart](../quickstart/): from sign-up to your first plan. - [Provider keys](../provider-keys/): the keys you need, what they cost and how they are stored. - [Free Intent Checker](../intent-checker/): check one keyword without an account. **Planning pages** - [Import keywords](../import-keywords/): files, paste, Ahrefs, seed research and Search Console. - [Run a plan](../run-a-plan/): the cost gate, the run steps and re-runs. - [Read the plan](../read-the-plan/): verdicts, formats, receipts, the topical map and parked keywords. - [Review queue](../review-queue/): the calls that need a person. **Writing** - [Briefs](../briefs/): what a brief holds and when it can be exported. - [Drafts and sign-off](../drafts-and-sign-off/): sourced drafts, sentence checks, sign-off and draft targets. - [Content score](../content-score/): an advisory 0 to 100 check of a draft. **After publishing** - [Measure](../measure/): Search Console, rank tracking, AI visibility, competitors and reports. - [Improve](../improve/): content audit, decay and refresh, site pages and links. **Automation** - [Jobs and workflows](../workflows/): pre-built jobs, the workflow builder, templates and blocks. **Your account** - [Workspace and team](../workspace-and-team/): workspaces, projects, roles, clients and security. - [Billing](../billing/): one plan per workspace, price bands and the price lock. - [Glossary](../glossary/): every SerpDad term in plain words. - [FAQ](../faq/): common questions. - [Get help](../support/): how to contact support. ## Related - [Quickstart](../quickstart/) - [Glossary](../glossary/) - [FAQ](../faq/) --- # Quickstart URL: https://serpdad.com/docs/quickstart/ > Create an account, connect your keys, add a site and keywords, and run your first page plan free up to 1,000 keywords. **In short:** You can go from sign-up to a finished page plan in one session. Your first plan is free on SerpDad for up to 1,000 keywords, and it runs on your own DataForSEO and AI provider keys. This page walks through each step in order. ## Before you start You need three things: - A work email address. SerpDad does not accept disposable email addresses. - A DataForSEO account, for search results and search volumes. - An account with one AI provider. OpenRouter is the recommended choice. See [Provider keys](../provider-keys/) for the full list. Your providers bill you directly for what your plan uses. SerpDad shows the estimated provider cost before anything runs. ## The free first plan Your first plan costs nothing on SerpDad. No card is needed. | Rule | Value | |---|---| | Who gets it | Once per verified user | | Where | The first workspace you own | | Keywords | Up to 1,000 | | Briefs | Written automatically for the top 5 pages by search volume | | Secondary keywords | Off | | Provider costs | Billed to you by your providers, on your own keys | If you import more than 1,000 keywords, the cost gate tells you how many fit. A second run needs the paid plan. Your first plan and its receipts stay either way. See [Billing](../billing/). ## Step 1: create your account 1. Open the sign-up page. 2. Enter your full name, your work email and a password. In production, passwords need at least 12 characters and must not appear in known data breaches. 3. Tick the box to agree to the terms and the privacy policy. 4. Select the sign-up button. You can also use **Continue with Google**. Google must have verified the email address. You still agree to the terms on a short confirm screen. ## Step 2: verify your email 1. Open the verification email from SerpDad. 2. Select the link. It works for 60 minutes, and only the newest link works. 3. If the email does not arrive, ask for a new one. You can resend after 60 seconds. You cannot add provider keys until your email is verified. Accounts made with Continue with Google start verified. ## Step 3: your workspace SerpDad creates a workspace for you when you sign up. A workspace holds your projects, members, provider keys and billing. You are its Owner. See [Workspace and team](../workspace-and-team/). ## Step 4: follow the guided setup Owners and Admins see a guided setup with four steps. You can leave and come back. SerpDad resumes at the next unfinished step. 1. **Connect DataForSEO.** Paste your DataForSEO API login and API password. Use the API password, not the password you sign in with. SerpDad checks the key and reads your balance before it saves it. 2. **Connect your AI provider.** Pick a provider and a model, paste the key and save. SerpDad checks the key before it saves it. 3. **Add your site and keywords.** Enter your site address and add keywords. Paste one keyword per line, or upload a CSV, TSV or TXT file. SerpDad creates the project and imports the keywords. 4. **Run your first plan.** Read the estimate and approve it. Nothing is fetched until you approve. The site address matters. With it, SerpDad can route keywords to pages your site already has. Without it, every page is planned as new. Every project plans for one market: United States, English, desktop. The market is fixed when the project is created. ## Step 5: wait for the run The run fetches the top 10 results for each keyword, fills search volumes, groups keywords into pages and checks the plan. You can leave the page. SerpDad emails the person who approved the run when the plan is ready. How long it takes depends on the number of keywords and your provider queues. ## Step 6: answer the review calls Most calls settle themselves. A few need a person, for example a keyword that fits two pages equally. Open **Review** and answer them. Each card shows the evidence for both options. See [Review queue](../review-queue/). ## Step 7: read the plan and the briefs 1. Open **Plan** to see every page, its keywords, its verdict and its format. Select a row to open its receipt. 2. Open **Briefs**. Briefs for the top 5 pages by search volume are written automatically. 3. Open a brief, check each claim against its source, and export it when the export check passes. See [Read the plan](../read-the-plan/) and [Briefs](../briefs/). ## What to do next - Connect Search Console so the plan can use your site's own click data. See [Measure](../measure/). - Invite your team. See [Workspace and team](../workspace-and-team/). - Subscribe to run again. Re-runs of stored keywords are free on SerpDad. See [Billing](../billing/). ## Related - [Provider keys](../provider-keys/) - [Import keywords](../import-keywords/) - [Run a plan](../run-a-plan/) - [Read the plan](../read-the-plan/) - [Billing](../billing/) --- # Provider keys URL: https://serpdad.com/docs/provider-keys/ > The provider keys SerpDad needs, the optional connections, how keys are stored and checked, and the spend cap, approval line and low-balance pause that guard your spending. **In short:** SerpDad runs on your own provider accounts. You need a DataForSEO key and one AI provider key before a run can start. Providers bill you directly at their own prices, and SerpDad adds no markup. ## Why your own keys A provider key is your own credential for a provider's API. SerpDad uses your key for every provider call it makes for your workspace. It never falls back to a SerpDad key for your work. This means: - You pay each provider its own price, with no markup. - You see an estimate before every run and the actual cost after it. - Data bought with your key stays in your workspace. Other workspaces never read it. Manage keys in **Workspace > Provider keys**. Only the Owner and Admins can add, replace, check or delete keys. ## Required keys | Provider | What SerpDad uses it for | What you paste | |---|---|---| | DataForSEO | The top 10 Google results and search volumes your plans are built from | API login and API password from DataForSEO's API Access page | | One AI provider | Reading each search result and writing your briefs and drafts | Provider, API key and model | A run cannot be approved until both keys pass a live check. The top bar shows a Keys pill, for example "2 of 2 valid". ### Supported AI providers | Provider | Listed as | |---|---| | OpenRouter | Recommended. One key reaches every model SerpDad offers. | | Anthropic | Under "Other providers" | | OpenAI | Under "Other providers" | | Z.AI (GLM) | Under "Other providers" | | Moonshot (Kimi) | Under "Other providers" | You pick a model from a fixed list of models SerpDad has tested. There is no custom base address. If a model leaves the list, SerpDad marks the key and pauses runs that need it with a message telling you to pick another model. ## Optional connections | Connection | What it adds | Where you connect it | |---|---|---| | Google Search Console | Your site's clicks, impressions and positions. Read-only: SerpDad never changes anything in Search Console. | **Workspace > Search Console**, per project | | Ahrefs | Imports keyword ideas or the keywords a site ranks for, from your own Ahrefs account. Needs an Ahrefs API v3 key, which comes with Ahrefs Lite or higher. Ahrefs charges the units to your Ahrefs plan. | **Workspace > Provider keys** | | Spiral | The voice pass, which rewrites drafts in your voice. Optional. A separate Spiral account is suggested, because a Spiral key opens the whole account. | **Workspace > Provider keys**, then **Voice** | | Google Sheets | The "Import from Google Sheets" workflow block, on a read-only Google grant | **Workspace > Connections** | The Image maker workflow block makes article images on your OpenRouter key. See [Jobs and workflows](../workflows/). ## How keys are stored - Keys are encrypted with a key separate from the rest of the app. Each key is bound to your workspace and provider. - Keys are write-only. After you save a key, the browser only sees the provider, the last 4 characters, the status, the balance and dates. - Keys never appear in logs, emails, links or error messages. - Replacing or deleting a saved key asks for your password again. - You can save keys up to 10 times an hour, per user and per workspace. - The Owner gets an email when someone else changes a key. ## How keys are checked 1. When you save a key, SerpDad runs a free or near-free check with the provider. A failed check refuses the save with a fixed message, for example to use the DataForSEO API password and not the dashboard password. 2. If the provider cannot be reached, SerpDad saves the key as "Not checked yet" and tries again. 3. Every saved key is checked again each night. Key statuses you may see: | Status | What to do | |---|---| | Not checked yet | Wait, or select "Check key again" | | Working | Nothing | | Refused by the provider | Copy the key again and save it | | Out of funds | Add funds at the provider, then check the key again | | Spend limit reached | Raise the limit at the provider, or wait for it to reset | | Blocked until checked | Check the key again | | Paused by SerpDad | SerpDad paused keys for safety. Follow the notice. | ## Spend controls Set these in **Workspace > Provider keys > Spend cap and approval**. They apply to every project in the workspace. | Control | Default | What it does | |---|---|---| | Monthly spend cap | $50.00 a month (suggested). Leave blank for no cap. | Approval checks the estimate plus this month's spend against the cap. A run that would pass the cap pauses. | | Owner approval above | $25.00 per run | A run estimated above this waits for an Owner or Admin to approve it. | | Low-balance pause | DataForSEO balance below $2.00 | The run pauses and asks you to top up. | Owners and Admins get one email at 50% and one at 90% of the cap each month. Set a spend limit at each provider too, as a second guard. A paused run waits 72 hours. Fix the key, then select "Check key again" and the run resumes. It fetches only what is still missing, so nothing is paid twice. If nobody fixes it in 72 hours, the run fails cleanly and your old plan stays live. ## Typical cost per 1,000 keywords These are SerpDad's estimates from provider price pages checked on 2026-10-16. They are not yet measured on live keys. Your cost gate always shows the estimate for your own run and accounts. | Line | Provider | Estimate per 1,000 keywords | |---|---|---| | Top 10 results | DataForSEO | $0.60 standard, $1.20 priority | | Search volume | DataForSEO | $0.06 | | Secondary keywords, 20 per page | DataForSEO | about $2.16; $0 when off | | Page classification | AI provider | $0.75 to $5.00 | | 5 automatic briefs | AI provider | about $0.35 (about $0.07 each) | | **Total with 5 briefs** | | **about $3.95 to $8.15** | Results SerpDad already fetched in your workspace in the last 30 days are reused at no cost. ## Related - [Quickstart](../quickstart/) - [Run a plan](../run-a-plan/) - [Billing](../billing/) - [Workspace and team](../workspace-and-team/) - [Measure](../measure/) --- # Import keywords URL: https://serpdad.com/docs/import-keywords/ > The ways to bring keywords into a SerpDad project, how SerpDad cleans the list, and the limits on files, keywords and runs. **In short:** You can bring keywords into a project from a file, a paste, Ahrefs, seed keyword research, Search Console or a Google Sheet. SerpDad removes only exact duplicates and obvious junk. It never merges keywords that just look similar, because the search results decide that later. ## Where keywords go A keyword is one unique search phrase in a project. Keywords belong to one project. The same phrase in two projects counts as two separate keywords. Open **Plan > Import** in a project. The Import page is also the start form of the project's default workflow, "Keyword pile to page plan". See [Run a plan](../run-a-plan/). Only the Owner, Admins and Managers can import keywords. ## Sources | Source | Where | What it does | Cost | |---|---|---|---| | Upload export | Import, "Upload export · CSV" tab | Upload CSV, TSV or TXT files from any keyword tool | No cost to import | | Paste keywords | Import, "Paste keywords" tab | Paste one keyword per line | No cost to import | | From Ahrefs | Import, "From Ahrefs" tab | Keyword ideas from seed keywords, or the keywords a site ranks for, from your own Ahrefs account | Ahrefs units on your Ahrefs plan | | Seed keywords | Import, "Seed keywords" tab | Keyword ideas from a few seed keywords, through DataForSEO Labs on your DataForSEO key | Shown as an estimate before you fetch | | Keyword inbox | Plan > Keyword inbox | Search Console queries that no keyword covers yet | No cost until you route them | | Competitors | Measure > Competitors | Keywords that up to 5 competitor domains rank for | Shown as an estimate before you fetch | | Import from Google Sheets | A workflow block | Reads keywords from one column of a Google Sheet, on a read-only Google grant | No cost | ### Upload a file 1. Open **Import** and choose "Upload export · CSV". 2. Add up to 20 files. Each file can be up to 10 MB. 3. Map the columns. **Keyword** is required. **Volume** is optional. Other columns can be set to Ignore. 4. Check the counts, then go on to the estimate. If a file has no keyword column, SerpDad refuses it with: "No keyword column found. Rename a column to Keyword and upload again." A refused file costs nothing and shows in the import history as "Failed · no cost". Large uploads, above about 2 MB, are read in the background. ### From Ahrefs 1. Add your Ahrefs API v3 key in **Workspace > Provider keys**. See [Provider keys](../provider-keys/). 2. Open **Import > From Ahrefs**. 3. Choose keyword ideas from seed keywords (up to 10 seeds), or the keywords a site ranks for. 4. Set the most keywords to fetch. The default is 1,000. The maximum is 10,000. 5. SerpDad shows the most Ahrefs units the import can use and how many you have left. Confirm to fetch. ### Seed keywords 1. Open **Import > Seed keywords**. 2. Enter up to 20 seed keywords. 3. Read the estimate on your DataForSEO key, then fetch. 4. Add the keywords you want to the project. ### Keyword inbox When Search Console is connected, the keyword inbox lists queries from your site's data that match no keyword in the project. They are not keywords yet. They do not count toward keywords stored and cost nothing until you route them. Queries with fewer than 10 impressions are left out. Each query gets a proposal, for example to join a planned page or to need a new page, with a receipt of where its impressions land. Routing a query shows an estimate and runs through a normal run. ## How SerpDad cleans the list SerpDad cleans every import the same way, before anything is sent to a provider. | Rule | What happens | |---|---| | Normalize | Each phrase is lowercased and trimmed | | Exact duplicates | Removed. Only exact duplicates after lowercasing and trimming count. | | Similar phrases | Never merged. "api testing tool" and "api testing tools" stay as two keywords until the results decide. | | Empty or symbols only | Skipped as junk | | Longer than 10 words | Skipped as junk | | Previously junked | Skipped. Phrases on the project's junk list are never imported again. | Skipped keywords are never stored, never sent to a provider and never billed. The import shows how many were skipped and why. ## Limits | Limit | Value | |---|---| | Files per import | 20 | | Size per file | 10 MB | | File types | CSV, TSV, TXT | | Keywords per project | 200,000 | | Keywords per run (fair use) | 200,000 | | Words per keyword | 10 | | Ahrefs seeds | 10 | | Ahrefs keywords per fetch | 1,000 by default, up to 10,000 | | Seed keyword research seeds | 20 | A run above 200,000 keywords is refused at the gate. The message gives the count, the limit and how many keywords to remove. Nothing is fetched and nothing is charged. ## Import history Each import shows its source, rows read, junk skipped by reason, how many keywords were routed, the run it fed, who imported it and when, and who approved the run. ## Keywords stored Keywords stored is the count of unique keywords across all live projects in your workspace. It is a count, not a limit. Re-running stored keywords adds nothing to it. Junking or deleting a keyword lowers it. ## Related - [Run a plan](../run-a-plan/) - [Read the plan](../read-the-plan/) - [Provider keys](../provider-keys/) - [Measure](../measure/) - [Jobs and workflows](../workflows/) --- # Run a plan URL: https://serpdad.com/docs/run-a-plan/ > How a SerpDad run works, from the cost estimate and approval to fetching results, grouping keywords into pages, checking the plan, and comparing re-runs. **In short:** A run turns your project's keywords into a page plan. You see a dollar estimate on your own provider accounts first, and nothing is fetched until a person approves it. Re-runs of stored keywords are free on SerpDad, and results fetched in the last 30 days are reused at no provider cost. ## What a run is A run is one pass over a project: import, estimate, approval, fetch, grouping, checks and review. Every run plans the project's whole keyword list, not only the new keywords. That is what keeps one owner page per keyword. A project has one active run at a time. Every project starts with a workflow called **Keyword pile to page plan**. The **New run** button and the Import page both start it. See [Jobs and workflows](../workflows/). ## The steps of Keyword pile to page plan | Step | What happens | Provider cost | |---|---|---| | Import keywords | Adds the keywords and skips junk | None | | Fetch SERPs | Fetches the top 10 Google results for each keyword | DataForSEO, on your key | | Search volume | Fills monthly search volumes, one task per 1,000 keywords | DataForSEO, on your key | | Cluster by SERP overlap | Puts keywords on one page when their top 10 results share enough pages | None | | Score scope and format | Decides whether each page stands alone or becomes a section, and which format fits | Your AI provider | | Route around owned pages | Marks a page as Optimize when your site already has a page for it | None | | Park weak pages | Parks single keywords with no volume and thin pages nothing overlaps | None | | Labs secondary keywords | Adds secondary keywords to each standalone page (20 per page by default) | DataForSEO, on your key | | Plan check | Confirms every keyword has exactly one place, then swaps the new plan in | None | | Human review | Lists the calls that need a person. The run does not wait for answers. | None | | Generate brief | Writes briefs for the top 5 pages by search volume | Your AI provider | | Notify by email | Emails the person who approved the run | None | ## The cost gate The last import step is the cost gate. It shows, before anything is spent: - The keywords in this run against the 200,000 limit, for example "2,094 of 200,000 keywords in this run". - Exact lines for the top 10 fetch and search volume, at your DataForSEO account's own prices. - Ranges for secondary keywords, page classification and briefs. These depend on how many pages the plan finds. - Your DataForSEO balance, your monthly spend cap after this run and the owner approval line. - How many keywords reuse results already fetched in this workspace, and how old the oldest is. Reused results and skipped junk show "No cost". ### The refresh toggle By default, keywords with a result fetched in this workspace in the last 30 days keep that result. That costs nothing on the fetch line. Turn on refresh to fetch every keyword again. A plan can mix results read on different dates. The gate says so, and every receipt shows each result's fetch date. ### When the gate refuses or waits | Situation | What you see | |---|---| | Keys missing or not working | "Connect your keys to see the cost", with a link | | Over 200,000 keywords | The run is refused, with how many keywords to remove | | Free first run already used and no plan | "Your second run needs a plan" | | Estimate above the owner approval line | A Manager sees "Request approval". The run waits for an Owner or Admin. | | Would pass the monthly spend cap | The run is refused and names the cap | | Balance below the exact part of the estimate | A warning. The run can still start, and it pauses if the balance drops below $2.00. | ## Run your plan 1. Open **Import** in the project and add keywords. See [Import keywords](../import-keywords/). 2. Read the estimate. 3. Select **Approve run**. The button shows the estimated total. SerpDad records who approved it, when, and the estimate. 4. Follow progress on the run page, or leave. Each step shows its counts, receipt and cost. 5. When the run completes, answer any review calls and read the plan. ## How keywords become pages SerpDad decides from counts on the fetched results. It never guesses from what the words mean. 1. Keywords are sorted by importance, using search volume and commercial value. 2. The most important keyword not yet on a page starts a new page. It becomes the page's focus keyword. 3. Every other keyword that shares at least the project's shared-results line with that focus keyword joins the page. The default line is 3 of the top 10 results. 4. Keywords that joined a page never pull in more keywords. 5. Each keyword gets exactly one owner page. A keyword that ties exactly between two pages stays on the suggested page and goes to Review. URLs that rank for a very large share of the project's keywords are left out of the count. ### Page or section Each search result is classified as a dedicated page (the whole page is about the phrase) or a section (the phrase is one part of a bigger page). A page stands alone when enough of its top 10 results are dedicated pages. The default is 5 of 10. Otherwise it becomes an H2 section inside a related page. The AI classifies results. It never invents them. ### Format The format is the most common page type among the top 10: list, how-to, comparison or landing. When the results lean clearly one way, SerpDad settles the format itself. A true split goes to Review. ## Shape the plan In the plan, the **Preset and granularity** control changes how broad pages are on the next re-run. | Preset | Shared results that put two keywords on one page | Effect | |---|---|---| | Fewer | 2 of 10 | Fewer, broader pages | | Balanced | 3 of 10 | The default | | More | 4 of 10 | More, narrower pages | You can also set a custom line from 1 to 10. A free preview shows the page count before you re-run. Format overrides, the Locations hub and hub names are covered in [Read the plan](../read-the-plan/). ## Re-runs Re-running a project's stored keywords has no SerpDad charge and adds nothing to keywords stored. You pay your providers only for results older than 30 days, refreshed results and new work. Human work survives re-runs: review answers, moves, pins, focus choices, briefs, verified claims and signed articles. ### Compare a re-run before applying it Turn on staging for a project to check a re-run before it replaces the live plan. Staging is off by default. 1. Run the project again. 2. Open the comparison. It shows the plan sum before and after, verdict changes, which pages changed and why, and every piece of human work kept. 3. Select **Approve and apply Run N** to swap it in, or **Discard Run N** to throw it away. A Manager, Admin or Owner applies a re-run. ## When a run stops - **Key problem:** the run pauses for up to 72 hours. Fix the key and select "Check key again". See [Provider keys](../provider-keys/). - **AI provider not answering:** SerpDad retries for 24 hours before the run fails. - **Failed run:** the old plan stays live, and fetched results are kept for the next run. The failed run shows what it cost and a retry with its estimated extra cost. ## Related - [Import keywords](../import-keywords/) - [Read the plan](../read-the-plan/) - [Review queue](../review-queue/) - [Provider keys](../provider-keys/) - [Jobs and workflows](../workflows/) --- # Read the plan URL: https://serpdad.com/docs/read-the-plan/ > How to read a SerpDad page plan, including verdict chips, page formats, sections, receipts, the topical map, parked keywords, the junk list and exports. **In short:** The plan lists every page to build or improve, the keywords each page owns, and a verdict that says what to do with it. Every keyword has exactly one place: a new page, an existing page, or parked. Any decision opens its receipt in one click. ## The plan sum The plan sum shows where every routed keyword went. It always closes: > keywords on new pages + keywords on existing pages + parked keywords = keywords routed For example: "1,702 + 246 + 146 = 2,094". The **Pages compete** tile counts keywords that two planned pages both target. It is always 0 on a completed plan, because a plan that breaks this rule fails instead of shipping. ## One keyword, one owner page Each keyword has exactly one owner page. A keyword can also be a secondary keyword, but only on its own owner page. No second page ever targets it. This is how SerpDad keeps your own planned pages from competing with each other. ## Verdict chips Each page row carries a verdict chip. | Chip | What it means | |---|---| | New page | No page on your site was matched to this page. Build it. | | Optimize | The plan sends this page's keywords to a page your site already has. A caption names the URL. Improve that page instead of writing a new one. | | Optimize #N | Your page's position is known only from Search Console. N is the Search Console average position, and the caption reads "GSC average". | | Ranks #N | Your page appears at position N in the top 10 results SerpDad fetched. | | Pages compete | Two or more of your existing pages earn impressions for this page's keywords. A caption says how many. | | Parked | The keyword is kept in the plan sum without a page. See "Parked keywords" below. | A page becomes Optimize when one of your site's URLs ranks in the top 10 for its focus keyword, or for at least half of its keywords. One URL serves one planned page. Verdicts update after a run, a Search Console sync, a site address change or a disconnect. Without a site address, every page is planned as new. Add the site address on the project to change that on the next run. ## Page formats The format is the most common page type among the top 10 results for the page's focus keyword. | Format | Pick it when searchers want | |---|---| | List | A list of options | | How-to | Steps to follow | | Comparison | To weigh options side by side | | Landing | To buy or sign up | When the results are split, the format goes to Review. You can also override a page's format with a one-line reason. The override survives re-runs. ## Own page or H2 section Not every group of keywords deserves its own page. SerpDad checks how many of the top 10 results are dedicated pages, meaning the whole page is about that phrase. - If enough results are dedicated pages, the page stands alone. The default is 5 of 10. - If not, it becomes an H2 section inside a related page. Sections get no brief of their own. They add headings to their parent page's brief. Borderline cases go to Review as "Should this be its own page?". ## Views, filters and export Open **Plan** in a project. Choose a view: List, Table, Tree or Map. - Filter by volume (All, Volume 100+, Volume 1,000+), by "Has sections", or by verdict. - Sort by volume, keywords or name. - Select **Export CSV** to download the plan. ## Receipts A receipt is the saved evidence behind one decision. Select a page row to open it beside the list. A receipt shows: - The decision sentence, for example "6 shared ≥ 3, same page". - The top 10 results, marked "Shared" where two keywords share a result and "Your page" where your site appears. - The fetch date of each side. When two results were read a day or more apart, the receipt says so. - The provider and key, for example "DataForSEO · your key" with its last 4 characters. - The decision time and the AI model that classified the results. The receipt panel has tabs for Receipt, Keywords, Search Console and Activity. Every receipt has **Report a wrong call**. ## Change the plan Owners, Admins and Managers can change the plan. Each change is recorded and survives re-runs. | Action | What it does | |---|---| | Move keyword | Moves a keyword to another page. The move is a pin that holds on later runs. A focus keyword cannot move. | | Pin owner | Chooses which of your site's URLs a page improves. SerpDad never edits, redirects or removes the other URL. | | Change focus keyword | Makes another keyword on the page its focus keyword | | Merge | Merges one page into another, with a preview first | | Junk | Removes a keyword or a whole page from the plan and from all future runs | If the evidence later turns against a move or pin, the call comes back to Review. ## Topical map and hubs A hub is a top-level page in the plan together with the sections folded into it. SerpDad names each hub from its phrases. You can rename it. The plan's Map view shows pages as hubs and sections, sized by volume and coloured by verdict. The full **Topical map** page offers three modes: Hub map, Tree and Radial. Every link opens its receipt. You can move a page to another hub and export the map as SVG. ## Parked keywords A parked keyword is kept in the plan sum without a page. Open **Plan > Parked**. | Reason | What it means | |---|---| | No search volume | It was the only keyword on its page, and the volume data shows no searches for it | | Thin, nothing to join | Its page was thin, and no page in the plan was close enough to take it as a section | Each row shows volume, the nearest page, how many results they share, and a receipt. Select **Make page** to turn one or many parked keywords into pages, or **Move to a page** to place them. **Export CSV** downloads the list. A project setting can fetch parked keywords' results again on each run. It is off by default, and turning it on shows the cost per run first. ## Keyword inbox The keyword inbox lists Search Console queries that no keyword covers yet. They cost nothing until you route them. See [Import keywords](../import-keywords/). ## Junk list Junking a keyword removes it from the plan, from all future runs and from all future cost. Junked phrases are skipped on every later import into that project. The **Junk list** shows who junked what. You can restore any keyword. Restored keywords come back without a page until the next run. The Junk list is visible to Owners, Admins and Managers. ## Related - [Run a plan](../run-a-plan/) - [Review queue](../review-queue/) - [Briefs](../briefs/) - [Import keywords](../import-keywords/) - [Glossary](../glossary/) --- # Review queue URL: https://serpdad.com/docs/review-queue/ > The calls SerpDad sends to a person, what each answer changes, how stakes are shown, which small calls SerpDad settles itself, and who can answer. **In short:** SerpDad settles every call the search results can settle. Only real ties and changes reach the review queue, each with the evidence for every option. Your answers are recorded and kept on every later run. ## What the review queue is The review queue is the one list of decisions that need a person. Open **Plan > Review** in a project. The Review row in the sidebar shows how many calls are open. Each keyword or page stays where SerpDad suggested until you answer. The plan is usable while calls are open. In the default workflow, the run does not wait for review answers. ## The kinds of call Every card shows the kind of call, a question, what your answer changes, the stakes, and what Google shows for the keyword. Each answer lists its facts. SerpDad's pick says why it was picked. Other answers say when to pick them instead. ### Keyword placement: "Which page should this keyword join?" **When:** a keyword's top 10 results overlap two pages equally. | Answer | What it changes | |---|---| | The suggested page | The keyword stays on that page, and that page's article covers it | | The other page | The keyword moves to the other page. The first page leaves it out. | | Make it its own page | The keyword gets a new page | ### Page shape: "What shape should this page take?" **When:** the top 10 results are split between formats, so SerpDad has no pick. The answers are List, How-to, Comparison and Landing. Each shows how many of the top 10 use that shape. The shape you pick sets how the brief and the article are laid out. ### Own page: "Should this be its own page?" **When:** a page's results differ from nearby pages, but only just. | Answer | What it changes | |---|---| | Keep it as its own page | The page keeps its own brief and article | | Mark page as junk (under See evidence) | The page and its keywords leave the plan and all future runs | ### Pinned keyword: "Keep this keyword where you pinned it?" **When:** you moved a keyword to a page, and its results now point to another page. | Answer | What it changes | |---|---| | The pinned page | SerpDad keeps your choice | | Where its results now point | The keyword moves there, or to a page of its own | ### Page title: "Which phrase should this page be built around?" **When:** the next keyword on a page is at least 90% as important as the focus keyword, or a focus keyword you chose no longer holds. The second case reads "Keep building this page around this phrase?". The phrase you pick becomes the page title, H1 and URL. The other phrase stays on the same page. Nothing is lost either way. The plan keeps SerpDad's choice until you switch. ### Your existing pages: "Which of your pages should SerpDad improve?" **When:** two or more of your site's URLs earn clicks for one planned page, and none clearly leads. | Answer | What it changes | |---|---| | One of your URLs | SerpDad plans changes to that page. Your other pages stay as they are. | | Write a new page | None of these pages changes, and a new page is planned | ### Signed article: "Does the signed article still fit this page?" **When:** a re-run changed what a page covers, and the page has a signed article. | Answer | What it changes | |---|---| | Keep it signed | Nothing changes. SerpDad never changes a signed article on its own. | | Send it back to the writer | The sign-off is removed, so the article needs signing again before it exports | ## Stakes Each card shows a stakes pill, based on the searches a month the call moves. | Pill | Searches a month | |---|---| | Low stakes | Under 100 | | Worth a look | 100 to 999 | | Changes traffic | 1,000 or more | ## Calls SerpDad settles itself Some small calls never reach the queue. SerpDad settles them with its own pick and keeps each in the history with a receipt. By default: - A page title call when the two phrases get fewer than 100 searches a month together, or when every word of one phrase is in the other and they get fewer than 1,000 together. - A keyword placement call when the keyword gets fewer than 50 searches a month. - A page shape call when the top 10 clearly leans one way. To see them, open the settled view: **What SerpDad settled**. ## Answer calls 1. Open **Review**. 2. Read the question, the stakes and the evidence. Select **See evidence** for the full top 10, marked by which answer each result supports. 3. Pick an answer and select **Save answer**. 4. Or select **Skip for now**. Where SerpDad has a pick, skipping keeps it. To accept every suggestion at once, select **Accept SerpDad's pick for all**. The button shows how many calls it settles. ### Keyboard shortcuts | Key | Action | |---|---| | 1 | Choose SerpDad's pick | | 2 | Choose the alternative | | O | Open or close the receipt | | J or P | Next card | | K | Previous card | Every card has **Report a wrong call**. ## What happens after you answer - Each answer records who answered and when, and keeps the previous state. - Answers survive re-runs. - An answer that changes what a page is (its format, scope or focus keyword) queues a brief rebuild. Moving a keyword does not. - When every call is settled, the queue reads "Nothing to review". ## Who can answer | Call | Who can answer | |---|---| | Calls about the plan | Owner, Admin, Manager | | Signed article calls | Owner, Admin, Manager, Editor | Writers can read the queue but cannot answer. ## Related - [Read the plan](../read-the-plan/) - [Run a plan](../run-a-plan/) - [Drafts and sign-off](../drafts-and-sign-off/) - [Workspace and team](../workspace-and-team/) --- # Briefs URL: https://serpdad.com/docs/briefs/ > What a SerpDad brief contains, how coverage is measured, how claims are checked, when a brief can be exported, and how brief spending is controlled. **In short:** A brief is the writing plan for one standalone page, built from the top 10 results for its focus keyword and every keyword on the page. It holds an angle, an outline with word budgets, terms, questions and claims with sources. A brief exports only when every claim is checked and every subtopic is planned or dismissed. ## One brief per standalone page Each standalone page in the plan can have one brief. H2 sections folded into a page get no brief of their own. They add headings to their parent page's brief. Pages marked Optimize do not get an automatic new-page brief, because the plan says to improve an existing page. Open **Write > Briefs** to see every brief on a board by status, or as a list. | Status | What it means | |---|---| | Queued | Waiting to be built | | Generating | Being built now | | Ready | Built and ready to work on | | Incomplete | Could not be built fully. The brief says why. | | Waiting on key | Paused by a key problem. Nothing is charged while it waits. | ## What a brief contains | Part | What it gives the writer | |---|---| | Angle | The angle this page can own because the top results do not have it | | Outline | The headings to write, each with a word budget based on the median length of the top 10 | | Material per section | Whether each section has material: "Has material", "N of M checked" or "Needs material" | | SERP gap | Subtopics the ranking pages cover, and what nobody ranking covers. You plan or dismiss each one. | | Terms and entities | Terms to mention, with counts, and the named things the ranking pages share | | Entity model | The entities the page should name, grouped in layers | | On-page structure | How the ranking pages are structured: headings, length and the sites holding the top 10 | | Questions and value | The questions searchers ask, grouped by the kind of answer each needs, and the sections planned to answer them | | The answer Google shows now | The featured snippet or AI Overview, when there is one, as the bar to beat | | Claims and sources | Each factual claim with its source link and a box a person ticks after checking it | | Quotes | Exact words from named people, each with a source | | Media plan | The images and other media the page needs | | Internal link plan | Which related pages to link to, the anchor for each, why it fits and where | | Keywords | The page's keywords, focus keyword first, with monthly searches | | Activity | Page decisions, moved keywords, the build, ticked claims, quotes and exports | A brief can also hold reader inputs (Audience, Key takeaway, Next step), a listicle kit for list pages, quotes mined from the top 10 with their sources, and a list of excluded domains for the project. The foot of every brief shows when it was built, the provider and model, and what the last build cost on your keys. SerpDad never invents a fact for a brief, and the brief builder never writes the article. ## Coverage Coverage is the share of the brief's subtopics that are covered, as a whole percentage: > coverage = covered subtopics ÷ all subtopics × 100 A subtopic counts as covered when it is planned in the outline or dismissed with a reason. An item no ranking page has, called a differentiator, is not part of the count. ## Check claims Each claim has a source URL and an unticked box. 1. Open the source and read the passage. 2. If the source supports the claim, tick the box. SerpDad records who ticked it and when. 3. If it does not, leave it unticked or remove the claim. Claims with no source, or an old check, are listed first. Withdrawing a tick removes the brief's export stamp. A tick belongs to the fact, so one tick covers every brief and article that cites the same fact. See the fact library in [Drafts and sign-off](../drafts-and-sign-off/). ## Add a quote 1. In the brief, add the exact words, the speaker's name and role, and a source URL. 2. SerpDad checks that the page is public and that the words appear on it. 3. A quote with no source is refused. Accepted quotes become Q# items. ## Export a brief A brief exports when all of these are true: - The brief is Ready. - Every claim has been checked against its source. - Coverage is 100%: every subtopic is planned or dismissed as out of intent. Until then, the brief says what is left. Then: 1. Select **Export**. 2. Choose Markdown or HTML. The file ends with a receipts appendix: each verified claim, its source, who verified it and when. HTML exports download as a file, escape every value and block scripts. ## Brief spending Briefs run on your AI provider key. Owners and Admins set these controls in **Workspace > Provider keys > Brief spend controls**. | Control | Default | Notes | |---|---|---| | Automatic briefs per run | Top 5 pages by search volume | 0 means briefs are made on click only | | Briefs by hand per day | 100 per workspace | Resets at midnight UTC. Automatic briefs do not count. | | Secondary keywords per page | 20 | Off, 10 or 20. Always off on the free first plan. | Every **Generate**, **Generate the rest** and **Rebuild incomplete** button shows its estimated cost on your AI key. Above the owner approval line, an Owner or Admin must approve. If a key problem pauses briefs, select **Resume now** after fixing the key. ## Briefs survive re-runs When you re-run a project, each brief moves to the matching page, with its verified claims. A brief whose page no longer exists, but which holds human work, is kept under "Kept from an older plan". You can move it to a page or keep it. ## Who can do what | Action | Roles | |---|---| | Read briefs | Everyone in the workspace | | Edit the outline, plan or dismiss subtopics, tick claims, export | Owner, Admin, Manager, Editor, Writer | | Generate, regenerate and rebuild briefs | Owner, Admin, Manager | | Change brief spend controls | Owner, Admin | ## Related - [Read the plan](../read-the-plan/) - [Drafts and sign-off](../drafts-and-sign-off/) - [Content score](../content-score/) - [Provider keys](../provider-keys/) - [Glossary](../glossary/) --- # Drafts and sign-off URL: https://serpdad.com/docs/drafts-and-sign-off/ > How SerpDad drafts articles only from sourced brief items, checks every sentence, takes a named sign-off, stages drafts to WordPress, Webflow, Shopify or Google Docs, and keeps facts, voice and authors. **In short:** SerpDad drafts each section of an article only from items in its brief: checked claims, usable quotes and your own experience answers. Every sentence cites its source, and a sentence with no source blocks sign-off. SerpDad never publishes. It stages drafts for a person to review in your own system. ## The rule: AI writes sentences, never facts A draft is an article version written only from brief items. Each sentence has a type and a chip: | Chip | Type | Source | |---|---|---| | F# | Fact | A ticked claim with a source | | E# | Experience | A saved answer from your experience interview | | Q# | Quote | A usable quote, cited word for word | | (none) | Connective | A linking sentence that asserts nothing checkable | If a section has too little material, SerpDad returns it with a list of what is missing. It never pads. Draft versions never change. Any edit makes a new version. ## Write an article from a brief Open **Write > Drafts** to see articles on a board by stage. The stages are Brief approved, Drafting, Draft ready, Approved and Exported. The "What holds it" panel lists exactly what blocks the selected article. 1. **Start.** Start the article from a Ready brief on the Drafts board. 2. **Prepare.** Tick the claims you trust, add quotes, answer the experience interview (3 to 5 questions only a practitioner can answer), and set the writer, signer, byline, due date and a note. 3. **Draft.** "Draft all sections" stays disabled until every section has material. Before drafting, you see the units and the estimated cost on your AI key. 4. **Fix flagged sentences.** For each sentence you can redraft, verify, rewrite with no claim, remove, or revert to source. 5. **Run full verify.** A larger AI model reads every sentence against its sources. The estimate shows first. Full verify also runs before sign-off. 6. **Sign off.** A named person signs the exact version. 7. **Export or stage** the signed article. ## Sentence checks SerpDad checks drafts in two layers. | Layer | When | What it checks | |---|---|---| | Checks on save | Every save, no provider cost | Every number, percent, currency amount, date, proper noun, quoted string and URL must appear in that sentence's own cited items. Also banned phrases and wording too close to a source. | | Full verify | On "Run full verify" and before sign-off | An AI reviewer on a larger model reads each sentence against its sources | An unsourced sentence is shown in red with an "Unsourced" chip. Only unsourced sentences block sign-off. Other flags are advice. ## Sign-off Sign-off is a named person approving one exact draft version. A draft can be signed only when: - It has zero unsourced sentences. - Every section is drafted. - A named person signs that exact version. There is no approve-anyway. Any edit after signing removes the signature. | Rule | Detail | |---|---| | Who can sign | Editor, Manager, Admin or Owner | | Your own edit | You cannot sign a version you last edited | | One-member workspace | The Owner signs their own work. The article and export say "self-signed (single-member workspace)". | People who can sign get an email when a draft is ready for sign-off. ## Export a signed article - **Markdown** with a receipts appendix. - **HTML** with Article schema, including the byline. - **Copy** to the clipboard. Every export ends with a provenance table: each sentence, its type, receipt, source and verified state. Export history records the version and signature each export shipped. ## The outline approval path A project can also go from plan to article with one approval. 1. On the plan, select **Review outlines**. 2. For each page, read the outline. Select **Edit headings** to change any heading, then **Approve outline**, or **Skip this page**. 3. SerpDad writes the whole article from the pages the outline came from. It confirms every claim against those pages and removes sentences no page supports. Then it rewrites the text in your voice, formats it, places internal links, adds images and screenshots, and saves it to WordPress as a draft. In this path, approving the outline is the person's approval of the article and of the run's estimate on your keys. There is no separate sign-off step. If the project has no WordPress connection, the article finishes ready to copy or download. If the run cannot start, for example because of the spend cap or a missing key, it waits and the article page says why. ## Draft targets Set draft targets per project in **Workspace > Draft targets**. SerpDad only ever creates drafts. | Target | What SerpDad creates | What you connect | |---|---|---| | WordPress | A draft post, with internal links and meta description | Site address and an application password | | Webflow | A draft CMS item | Site token and CMS collection | | Shopify | A hidden blog article | Shop domain, Admin API token and blog | | Google Docs | A Google Doc in your Drive, never shared | Your Google account, with access only to files SerpDad creates | Writers, Editors, Managers, Admins and the Owner can stage signed articles. Someone with publish rights reviews and publishes the draft in your own system. ## Voice and authors - **Voice** (Workspace > Voice): a voice for the workspace or a project, built from samples you add as URLs or pasted text. A voice is ready once it has 3 approved samples. - **Voice pass:** optional, on your own Spiral key. Turn it on with "Use the voice pass on new drafts". Facts and quotes are hidden from Spiral and restored exactly. A rewritten sentence that drifts from its sources goes back to its checked wording. A draft without a voice pass reads "Voice pending" and can still be signed and exported. The settings page shows Spiral's training policy. - **Authors** (Workspace > Authors): each author has a name, role, bio, photo and profile link. The byline goes into exports and the HTML schema. An article uses the byline's own voice once it has 3 approved samples. ## Fact library and receipts log The **Fact library** (Write > Fact library) lists every claim across your briefs and articles, with its source, its last tick and where it is used. | State | Meaning | |---|---| | Fresh | Ticked in the last 365 days | | Stale | More than 365 days since the last tick | | Unticked | Not yet checked | | Source dead | The source page no longer loads | Re-verify fetches the source again and shows the captured passage. Briefs citing a stale fact show a badge. The **Receipts log** (Write > Receipts log) lists the receipts behind your content. ## Related - [Briefs](../briefs/) - [Content score](../content-score/) - [Review queue](../review-queue/) - [Jobs and workflows](../workflows/) - [Workspace and team](../workspace-and-team/) --- # Content score URL: https://serpdad.com/docs/content-score/ > The content score is an advisory 0 to 100 check of one draft version against its brief, keywords and the top 10 results SerpDad read. It never blocks sign-off and never predicts rankings. **In short:** The content score is a number from 0 to 100 for one exact draft version. It compares the draft with what SerpDad already holds for that page: the brief, its sourced claims, the page's keywords, the top 10 results SerpDad read and the internal link plan. It is advice. It never blocks sign-off, and it does not predict rankings, traffic or clicks. ## What the score is - A score from 0 to 100, made of eight sub-scores with fixed weights. - Each sub-score shows the evidence it was decided from and the fixes that would raise it. - The score belongs to one draft version. After an edit, the old score shows greyed out until the new one is ready. - It is stored as a receipt, like every other SerpDad decision. ## What the score is not - It is not a prediction of rank, traffic or clicks. - It is not a copy of any search engine's system. - It is not a gate. Only three rules block a signed export: zero unsourced sentences, every section drafted and a named sign-off. See [Drafts and sign-off](../drafts-and-sign-off/). - It never edits the draft. A fix is a suggestion. Applying it makes a new version, which removes any signature. - It never publishes. ## The eight sub-scores | Sub-score | Points | What it looks at | |---|---|---| | Search intent and format | 15 | Whether the draft reads as the page's format, has the structure for that format, and answers first | | Sections answer their headings | 15 | Whether each section answers its own heading | | Topic coverage | 20 | Brief subtopics, shared entities and searcher questions | | Keyword use | 10 | Focus keyword placement, secondary keywords and natural repetition | | Claims and sources | 15 | Clean facts, how widely sources are spread, and facts in every subtopic | | Experience and authorship | 10 | Experience sentences, quotes, a byline, and an author bio and profile link | | Readability | 10 | Long sentences, long paragraphs, heading spacing, reading grade and banned phrases | | Internal links | 5 | Links placed and the anchor rules | | **Total** | **100** | | Most points (70 of 100) come from counting in plain code. The other 30 come from four language checks that SerpDad runs on its own servers: format read, answer first, sections answer their headings, and searcher questions. These checks need no key of yours and have no cost. ## Bands | Score | Band | |---|---| | 80 to 100 | Strong | | 60 to 79 | Fair | | Below 60 | Needs work | Below 70, the sign-off dialog adds a notice with the score and the number of open fixes. You can still sign off with the normal button. No note is needed. ## When parts are missing | Situation | What you see | |---|---| | Language checks could not run | The overall score reads "Not available". The code-based sub-scores and their fixes still show. Sign-off stays allowed. | | Some parts not measured, worth 15 points or less | The overall is worked out from the measured parts, scaled to 100, and marked "Partial" | | Parts not measured worth more than 15 points | The overall reads "Not available" | | Full verify has not run | Claims and sources is not measured, and the same rules apply | A language check whose accuracy has not yet been proven stays hidden and counts as not measured. ## When the score is worked out - **On every save:** the code-based parts, at once. - **On "Score content":** the full score, including the language checks. - **Before sign-off:** the full score runs on its own when someone opens the sign-off dialog on a version with no full score yet. ## Where you see it - On the article's **Optimize** tab, with the score, the band, one row per sub-score, and its evidence and fixes. A fix that points at a section or sentence scrolls to it. - As a small chip on the Drafts board card and in the draft's side panel. - In the sign-off dialog, with the open fixes, highest point gain first. - As the **Score content** workflow block, which passes every article on with its score. A workflow can branch on "Score: lowest" or "Score: articles below threshold". The block's default notice threshold is 70. The score shown at signing is stored on the sign-off record. It is not included in exports. ## Related - [Drafts and sign-off](../drafts-and-sign-off/) - [Briefs](../briefs/) - [Jobs and workflows](../workflows/) - [Glossary](../glossary/) --- # Measure URL: https://serpdad.com/docs/measure/ > Connect Google Search Console, read 28-day results, track ranks, check AI Overview and AI Mode citations, see competitor footprints and build the monthly report. **In short:** The Measure hub shows what happened after you published, using your own Search Console data and the results SerpDad fetched on your keys. It reports what moved and by how much. It never says SerpDad caused a change and never explains why a search engine moved a page. ## Connect Search Console Search Console connects per project, with read-only access. SerpDad never changes anything in your Search Console property. 1. Open **Workspace > Search Console** for the project. 2. Sign in with the Google account that can see the site's property. 3. Pick the property. SerpDad suggests the one that matches the project's site address. The first sync reads 90 days of page and query rows, and up to 16 months of page rows. After that, SerpDad syncs the newest day each night. Syncing needs no provider key, costs nothing and never adds keywords. | State | What it means | |---|---| | Connected | Syncs daily. Runs use the latest 28 days. | | Syncing | A sync is running | | Reconnect | Access expired or was revoked. Runs decide from the top 10 alone. The person who connected Google gets one email. | | Error | The sync failed. SerpDad retries every hour. | | Disconnected | You disconnected. SerpDad stops syncing and keeps the data it already synced. | Deleting the project or the workspace deletes the synced data. ## Results Open **Measure > Results**. Results compares the last 28 days with the 28 days before, and also with 3 months. You can view it by map, by territory or by page. A page counts as moved only when its average position changed by more than 3 positions or 8%, whichever is larger. Smaller changes read "No change". New pages read "Too new". Pages with fewer than 10 impressions are left out. Each row shows clicks, impressions, average position, movement, a 12-week sparkline and a receipt with the math. You can export Results as Markdown. ## Rank tracking Open **Measure > Rank tracking**. Each check fetches a fresh result for every tracked focus keyword that day, on your DataForSEO key. A stored result is never used as a rank. | Setting | Default | Options | |---|---|---| | How often | Weekly | Weekly or daily | | Depth | Top 10 | 20 and 100 cost more | - Past position 10, the Search Console average shows, labelled "GSC avg". - Pages not yet live are not checked. - The monthly estimate shows before tracking starts. Checks count against your monthly spend cap. - There is no plan limit on tracked keywords. - Estimated cost: about $0.0006 per keyword per check at depth 10. ## AI visibility Open **Measure > AI visibility**. AI visibility covers Google only. ### AI Overviews SerpDad reads AI Overviews from the results it already fetched, at no extra cost. It shows: - Which focus keywords show an AI Overview. - Which URLs the AI Overview cites, and whether your site is among them. - The most cited domains. The receipt shows the cited URLs. SerpDad reports what was cited. It never says why. **Planned:** an option to catch AI Overviews that load late. It is decided after a coverage test and is switched off for now. ### AI Mode AI Mode checks run on a schedule for the queries you choose. By default, that is your top 50 focus keywords by search volume. | Setting | Options | |---|---| | Schedule | Weekly, Every 2 weeks, Monthly | | Cost | About $0.0012 per query, on your DataForSEO key | The estimate shows first. Each result keeps its check date and the change since the last check. You can also select **Check now**. ### In the lists "In the lists" finds list articles in the fetched top 10 results for your plan keywords. It splits them into "Already listed", where your site appears, and "Not listed", which are possible outreach targets. You can export the list as CSV. ## Competitors Open **Measure > Competitors**. SerpDad counts each domain's footprint in the results your workspace already fetched, at no extra cost: results held, plan pages, average position, and the change since the last run. - Mark a domain as **Not a rival** for the project. - Seed keywords from up to 5 competitor domains, 100, 250 or 500 keywords per domain. You see an estimate first, and seeded keywords go through a normal run. ## Monthly report Open **Measure > Report**. 1. Pick the project, the period and the sections. 2. Choose a report for a client or for your team. 3. Export it as Markdown. Sections include "The month, in three lines", a territory scoreboard by hub, what moved with the math, rank tracking, content audit, AI visibility, links, work shipped and a receipts appendix. Building a report fetches nothing and costs nothing. There is no PDF export. To send reports on a schedule, use the "Send each client a monthly report" job. See [Jobs and workflows](../workflows/). ## Related - [Improve](../improve/) - [Provider keys](../provider-keys/) - [Read the plan](../read-the-plan/) - [Jobs and workflows](../workflows/) --- # Improve URL: https://serpdad.com/docs/improve/ > Use the content audit buckets, decay and refresh, the site pages crawl, internal link suggestions and outgoing link checks to decide what to fix next. **In short:** The Improve hub tells you which existing pages to fix next, using your Search Console data and the results SerpDad already holds. Each page shows the numbers and the rule that placed it. SerpDad suggests next steps. It never promises a ranking change. ## Content audit Open **Improve > Content audit**. The audit needs Search Console. See [Measure](../measure/). It compares each page's last 28 synced days with the 28 days before. Every site page with data in the last 90 days lands in one bucket. Buckets are checked in this order: | Bucket | Rule | Next step | |---|---|---| | Prune | No clicks in 90 days | Merge | | Decay | Clicks down more than 25%, from at least 100 clicks before | Refresh | | Quick win | Average position 4 to 10, with impressions rising | Optimize | | Striking distance | Average position 11 to 20 | Optimize | | Rework | At least 100 impressions, with fewer than 0.5% of them clicked | Optimize | | Monitor | Clicks moved 10% or more, or the position moved more than 3 positions or 8% | None | | Keep | Steady | None | **Seasonal guard:** with 12 or more months of data, a dip that matches the same weeks last year goes to Monitor, not Decay. Each page shows the Search Console rows that placed it. Lists show up to 150 rows. Select export to download every row. ## Decay and refresh Open **Improve > Decay and refresh**, or select a Decay row in the audit. For a decaying page, SerpDad shows the stored top 10 from before the drop and a fresh top 10, side by side. Changed rows are marked. SerpDad names what changed in the results: - New AI Overview - Format change - New competitor - Intent shift These describe what changed in the results. They are not a claim about why the page lost clicks. To refresh the page: 1. Read the estimate. 2. Start the refresh. SerpDad rebuilds the brief from the new results. 3. Only changed sections are drafted again. Unchanged signed sections stay signed. Changed sections need sign-off again. The "Refresh pages that are losing traffic" job can find these pages every week. See [Jobs and workflows](../workflows/). ## Site pages Open **Improve > Site pages** to crawl your site. - The crawl runs on DataForSEO On-Page, on your own DataForSEO key. SerpDad's servers never crawl your site. - The estimate shows before the crawl starts. - An optional JavaScript rendering mode costs about 10 times more. - One crawl stops at 10,000 pages. - Estimated cost: about $0.00015 per page, or $0.0015 per page with JavaScript rendering. The table shows each page's status, title, links in and links out, whether it matches a planned page, and its clicks. ## Internal links Open **Improve > Internal links**. Each suggestion comes with its evidence: - The two pages share top 10 results. - The target is a secondary keyword of the source page. - The two pages sit in the same hub. A link that already exists in the crawl is never suggested. The page also lists broken internal links with a suggested replacement, orphan pages with two suggested source pages, and thinly linked pages. You can mark a suggestion as added, dismiss it or copy it. ### Link rules in briefs and drafts The "Plan internal links" step adds an internal link plan to briefs and places links in drafts. - Anchors come from each target page's own keywords. - No anchor text is used twice in the project. - By default, each page gets 3 to 5 contextual links. - In drafts, a link is placed only where its anchor reads naturally. ## Outgoing links Open **Improve > Outgoing links**. SerpDad checks every outgoing link in your pages, briefs and articles from its own servers. Private addresses are blocked. | Rule | Value | |---|---| | Dead link | After three failed tries | | Redirects | Followed up to 5 hops | | Share links | Resolved to their final page | | Order | Dead links behind a fact come first | The page also shows your citation mix by source type. ## Next actions **Home > Next actions** gathers what to do next across your projects, grouped as Decide, Plan and write, and Improve. Each item has a short reason, its source, a receipt and one button. You can snooze an item to a date or dismiss it. A dismissed item comes back only if a later run changes its numbers. Next actions never act for you. ## Related - [Measure](../measure/) - [Drafts and sign-off](../drafts-and-sign-off/) - [Briefs](../briefs/) - [Jobs and workflows](../workflows/) --- # Jobs and workflows URL: https://serpdad.com/docs/workflows/ > Turn SerpDad's steps into pre-built jobs or custom workflows, with templates, triggers, a block catalogue, run approval, standing approvals, versions, run history and outputs to Slack, Linear, Asana, Trello and signed webhooks. **In short:** A workflow is a chain of blocks that a trigger starts. A job is a pre-built workflow you turn on for many clients by answering three questions. Both follow the same money rules: every spending block shows an estimate, and nothing spends without an approval. ## Jobs and workflows | | Jobs | Workflows | |---|---|---| | What it is | A ready-made workflow for a common outcome | A chain of blocks you arrange yourself | | Setup | Answer three questions and turn it on | Use the editor, or start from a template | | Where | **Jobs > All jobs**, **Pick a job**, **Clients** | **Jobs > Advanced**: All workflows, Templates, Runs | A client is a project in your workspace. ## Jobs Open **Jobs > Pick a job**. Each card shows the outcome, what the job makes, how often it runs, and its monthly cost range per client on your keys. | Job | How often | What it does | |---|---|---| | Weekly articles | Every week, on the day you pick | Picks the next pages for each client (3 a week by default), writes briefs and drafts, and asks your approver to sign off. Signed drafts go to each client's WordPress as drafts. | | Refresh pages that are losing traffic | Every week | Finds pages whose clicks fell 20% or more over the last 28 days (defaults) and asks your approver to review up to 5 refreshes a month per client. Nothing is refreshed until the approver starts it. | | Send each client a monthly report | On the day of the month you pick (the 1st by default) | Prepares a report for each client and gives a person a task to check and send it. Your agency sends it. | | Turn new Google searches into pages | Every week | Finds new Google searches that no page covers and asks your approver to approve up to 4 new pages a month per client. Nothing is fetched until the approver approves. | The Weekly articles card says "Publish N articles a week to WordPress". SerpDad creates WordPress drafts only. It never publishes. 1. Select a job. 2. Answer the three questions: which clients, then the job's own two settings. 3. Turn it on. You approve the spend. Each job has its own monthly spend limit, on top of the workspace's monthly spend cap. Tasks a job creates appear in **Home > My work**. The **Clients** page shows each client's job runs, open tasks and spend this month. ## Workflows | Term | Meaning | |---|---| | Version | A frozen copy of a workflow. Only a published version runs. Old versions never change. | | Draft | The editable copy. The banner says when it has changes not yet published. | | Trigger | The one block that starts a run | | Block | One step with typed inputs, outputs and settings | | Branch | A path out of a block, such as "Is true" and "Is false" | | Engine group | The engine blocks, in a fixed order, ending with the plan check | Workflow statuses are Active, Draft only and Archived. The editor is read-only below 768 px wide. ## Templates **Use template** copies a template into your workspace as a draft. - Keyword pile to page plan (the default for every project) - Monthly re-run - E-commerce category pages - Local service areas - SaaS docs and use cases - Publisher: find decaying posts - Affiliate comparison pages - Keyword pile to signed articles - Keyword pile to WordPress drafts - Approved outline to finished article - Weekly AI visibility - Agency monthly client report ## Triggers | Trigger | Starts a run when | |---|---| | Manual | A person presses Run | | Schedule | Each hour, day, week or month, at a set time in your time zone | | New keywords imported | An import adds new keywords to a chosen project | | Rank change | A rank check finds pages that moved more than 3 places or 8% | | Search Console drop or rise | The nightly sync finds pages that moved past your line against the 28 days before | | New competitor page | A rank check finds a new URL from a watched domain in a tracked top 10 | | Webhook | Your system sends a signed keyword list to the workflow's secret URL | | Outline approved | A person approves a page's outline | ## Block catalogue **Data:** Import keywords, Keywords from Ahrefs, Import from Google Sheets, Keyword research, Search Console data, Crawl site, Find decaying pages, New Search Console searches, Read site pages. **Engine group**, always in this order: Fetch SERPs, Search volume, Cluster by SERP overlap, Score scope and format, Route around owned pages, Park weak pages, Labs secondary keywords. **Decide:** Filter, If/else, Split by format, Human review, Approval, Wait. **Write:** Generate brief, Quote capture, Draft, Verify, Voice pass, Fact check, Tone, Format, Plan internal links, Score content, Image maker, Screenshot taker, Clean image metadata, Sign-off. **Act:** Export Markdown or HTML, Export CSV, Stage WordPress draft, Stage Webflow draft, Stage Shopify draft, Stage Google Doc, Notify by email, Notify by Slack, Call a webhook, Create task. **Measure:** Rank check, AI Overview check, AI Mode check, Report. Split by market is listed as out of scope, because SerpDad plans for United States desktop only. No block can publish to any site. ## Run approval 1. Start the run. If the trigger takes a file, upload it and map the columns. 2. Read the estimate: one line per spending block, your DataForSEO balance, your monthly cap after the run, and the keywords against the 200,000 limit. 3. Select **Approve run**. A Manager above the owner approval line sees **Request approval** instead. A run waiting for approval expires after 7 days. ## Standing approvals Scheduled, event and webhook runs have nobody at the gate. An Owner or Admin can grant a standing approval for one published version, up to a per-run ceiling. The default ceiling is $10.00, and it can never be above the owner approval line. A run above the ceiling waits and emails approvers. Publishing a version that changes a spending block or the trigger clears the standing approval. ## Versions and run history - **Version history** lists each published version: who published it, when, a note and a change summary. Select **Restore as draft** to bring an old version back. - **Runs** lists every run with its status: Waiting for approval, Queued, Running, Waiting on a person, Waiting, Parked, Completed, Failed, Cancelled or Expired. - Each step stores a receipt: inputs, outputs, evidence, provider, key (last 4), model, estimate, actual cost and timings. - You can retry a failed step (its extra cost shows first), resume a parked run, skip a Wait or Approval step, or cancel a run. Up to 3 runs per workspace hold a slot at once. More wait as Queued. ## Outputs and connections Add outbound connections in **Workspace > Connections**. They are stored encrypted and shown masked. | Output | Block | What you connect | |---|---|---| | Slack | Notify by Slack | An incoming webhook URL | | Linear, Asana, Trello | Create task | Your key for that tool | | Your own system | Call a webhook, or Create task | An https URL and a signing secret. Each call is signed with HMAC-SHA256. | | Email | Notify by email | Nothing. Recipients are members of the workspace. | The inbound Webhook trigger takes 60 calls an hour per workflow and up to 10,000 keywords a call. It refuses stale and replayed calls. ## Who can do what | Action | Roles | |---|---| | View workflows, runs and jobs | Everyone | | Create, edit, publish and run workflows; set up, change or pause jobs | Owner, Admin, Manager | | Grant standing approvals | Owner, Admin | ## Related - [Run a plan](../run-a-plan/) - [Drafts and sign-off](../drafts-and-sign-off/) - [Measure](../measure/) - [Provider keys](../provider-keys/) - [Workspace and team](../workspace-and-team/) --- # Workspace and team URL: https://serpdad.com/docs/workspace-and-team/ > How workspaces and projects are organised, what each role can do, how agencies handle clients, where connections live, and how sign-in security works. **In short:** A workspace holds your projects, members, provider keys and billing. Each project is one site in one market. Each member has one of five roles, and SerpDad checks the role on the server for every action. ## Workspaces A workspace is your team's space in SerpDad. It holds: - Projects - Members and their roles - Provider keys and spend controls - The plan subscription - The search data bought with its keys SerpDad creates a workspace for you when you sign up. You can belong to several workspaces, with a different role in each. Open **Workspace > All workspaces** to switch, create a new workspace, or leave one that someone else owns. The workspace name shows in the switcher, invitations and emails. The workspace's URL slug is fixed when it is created. ### Data bought with your keys Workspace settings show how many search results and volumes are stored, the oldest fetch date, and how many the last run reused. That data is read only by this workspace's projects. Other workspaces never read it, and neither do SerpDad's free tools. Runs reuse a stored result for free for 30 days. ## Projects A project is one site and one market inside a workspace. | Field | Rule | |---|---| | Name | Required | | Site address | https. Needed to route keywords to pages your site already has. | | Market | United States, English, desktop. Fixed when the project is created. | There is no project limit. To plan for a separate set of keywords, create another project. Deleting a project asks you to type its name and shows what will go. Provider keys and other projects are not touched. ## Roles | Role | Summary | |---|---| | Owner | Can do everything, including billing and deleting the workspace. There is one Owner. | | Admin | Manages provider keys, members, runs, briefs and sign-offs. Cannot manage billing or delete the workspace. | | Manager | Approves runs, settles reviews, generates briefs, invites members and signs articles. Cannot manage provider keys or billing. | | Editor | Edits and verifies briefs, drafts and signs articles, and stages signed drafts. Cannot approve runs, change jobs, invite members, or manage keys or billing. | | Writer | Edits, verifies and exports briefs, and drafts articles. Cannot approve runs, regenerate briefs or sign articles. | ### What each role can do | Action | Owner | Admin | Manager | Editor | Writer | |---|---|---|---|---|---| | View projects, plans, receipts and briefs | Yes | Yes | Yes | Yes | Yes | | Create projects and import keywords | Yes | Yes | Yes | No | No | | Approve a run at or below the approval line | Yes | Yes | Yes | No | No | | Approve a run above the approval line | Yes | Yes | No | No | No | | Answer review calls about the plan | Yes | Yes | Yes | No | No | | Answer review calls about a signed article | Yes | Yes | Yes | Yes | No | | Move keywords, pin owners, change focus, merge, junk | Yes | Yes | Yes | No | No | | Connect or disconnect Search Console | Yes | Yes | Yes | No | No | | Generate and rebuild briefs | Yes | Yes | Yes | No | No | | Edit, verify and export briefs | Yes | Yes | Yes | Yes | Yes | | Draft articles | Yes | Yes | Yes | Yes | Yes | | Sign articles (never your own last edit) | Yes | Yes | Yes | Yes | No | | Stage signed drafts to draft targets | Yes | Yes | Yes | Yes | Yes | | Add and edit authors and voice samples | Yes | Yes | Yes | Yes | No | | Create, edit and run workflows; set up jobs | Yes | Yes | Yes | No | No | | Grant standing approvals | Yes | Yes | No | No | No | | Manage provider keys, spend cap and approval line | Yes | Yes | No | No | No | | Change brief spend controls and voice settings | Yes | Yes | No | No | No | | Invite members (up to your own role) | Yes | Yes | Yes | No | No | | Change roles and remove members | Yes | Yes | No | No | No | | Rename the workspace | Yes | Yes | No | No | No | | Subscribe, cancel and manage billing | Yes | No | No | No | No | | Delete the workspace | Yes | No | No | No | No | A role that cannot open a page sees a page that names the role and who can change it. ## Invite your team 1. Open **Workspace > Workspace**. 2. Enter the person's email and pick a role. You can give a role up to your own. 3. Send the invitation. Invitations expire after 3 days. Resending sends the email again and starts a new 3 days. There is no seat limit. The invited person signs in or creates an account, then joins with one click. When you remove a member who saved a provider key, SerpDad warns you that they still know the key. The Owner gets an email to rotate it at the provider. ## Agencies and clients In the Jobs hub, each project in your workspace is a client. The **Clients** page shows each client's job runs, open tasks and spend this month. See [Jobs and workflows](../workflows/). You can also give each client its own workspace. Each workspace has its own keys, members and billing, and is billed as its own plan. See [Billing](../billing/). ## Connections | Connection | Where | Scope | |---|---|---| | Provider keys | Workspace > Provider keys | Workspace | | Slack, Linear, Asana, Trello, webhooks, Google Sheets | Workspace > Connections | Workspace | | Search Console | Workspace > Search Console | Project | | WordPress, Webflow, Shopify, Google Docs | Workspace > Draft targets | Project | ## Security | Feature | How it works | |---|---| | Passwords | At least 12 characters, checked against known data breaches | | Two-factor authentication | A 6-digit code from an authenticator app, or a recovery code. You get 8 recovery codes. Each works once. | | Passkeys | Sign in without a password. Add and remove passkeys in **Security**, with added and last-used dates. | | Continue with Google | Sign up or sign in with a Google-verified email. Two-factor authentication still applies. | | Linking Google | An existing password account links to Google only after you sign in with the password once | | Confirming sensitive actions | Changing keys, two-factor settings or passkeys asks you to confirm your password, a passkey, or Google | | Isolation | Every page checks that its data belongs to your workspace. Another workspace's data returns "This page does not exist". | You can delete your account from **Profile**. It is blocked while you are the only owner of a workspace that has other members. ## Related - [Billing](../billing/) - [Provider keys](../provider-keys/) - [Jobs and workflows](../workflows/) - [Quickstart](../quickstart/) --- # Billing URL: https://serpdad.com/docs/billing/ > SerpDad sells one monthly plan per workspace, priced in three bands set by when a workspace first pays, with a price lock, no keyword limit, and provider costs billed by your providers. **In short:** SerpDad has one plan, billed monthly per workspace. The first 30 paying workspaces pay $15 a month, the next 70 pay $25, and every workspace after that pays $35. Your price stays locked for life while your workspace keeps paying. ## The plan | What you get | Detail | |---|---| | Plans | One plan. No tiers, no upgrades, no downgrades. | | Billing | Monthly, per workspace | | Keyword limit | None. Fair use: up to 200,000 keywords per run. | | Re-runs | Free on SerpDad | | Projects | No limit | | Members | No limit | | Features | Every shipped module | | Provider costs | Billed by your providers, on your own keys | | Currency | USD | | Tax | Added where it applies, through Stripe Tax | ## Price bands The price depends on when your workspace first pays, not on how much you use. | Band | Who pays it | Price a month | |---|---|---| | 1 | The first 30 paying workspaces | $15 | | 2 | The next 70 paying workspaces | $25 | | 3 | Every paying workspace after the first 100 | $35 | Pricing and Billing show the current band price and how many seats are left in it. ## The price lock Your workspace keeps the band price it first paid for life, as long as it keeps paying. A later band filling up never changes it. Billing says, for example, "Your price is locked at $15 while you keep paying." - A past-due payment keeps the lock while Stripe retries the card. - If the subscription ends, the lock ends. A new subscription pays the current band price. ## The free first plan Before you subscribe, you can run one plan free on SerpDad: - Once per verified user, in the first workspace you own. - Up to 1,000 keywords. - Briefs for the top 5 pages by search volume. - Secondary keywords off. - No card needed. Your providers still bill you for what the run uses on your keys. A second run needs the plan. See [Quickstart](../quickstart/). ## What SerpDad charges and what providers charge SerpDad sells software. It never resells or marks up provider usage. | Who bills you | For what | |---|---| | SerpDad | The monthly plan | | DataForSEO | Search results, search volumes, secondary keywords, rank checks, AI Mode checks and site crawls | | Your AI provider | Page classification, briefs, drafts and verification | | Spiral, if you use it | The voice pass | | Ahrefs, if you use it | Ahrefs units on your Ahrefs plan | Provider costs never appear on a SerpDad invoice. Billing shows what your providers billed through SerpDad this month and links to spend by key. See [Provider keys](../provider-keys/) for the spend cap and typical costs. Use is counted for drafted sections, voice passes, crawl pages and AI visibility checks. The plan sets no monthly cap on them. One site crawl stops at 10,000 pages for safety. ## Subscribe Only the Owner can subscribe and manage billing. 1. Open **Workspace > Billing**. 2. Select subscribe. Stripe Checkout opens at the current band price. 3. Enter your card and billing address. You can add a tax ID. 4. Pay. Opening Checkout holds the next seat for 30 minutes, so the price shown in Checkout is the price charged. ## Invoices and your card In **Billing** you can see and download invoices as PDF, see the next invoice, and see who invoices go to. The Owner can open the Stripe Customer Portal to change the card. There is nothing to switch, because there is one plan. ## Cancel 1. Open **Workspace > Billing**. 2. Select cancel and confirm with **Cancel plan**. The plan stays active until the end of the paid month. After that, your price lock ends. You keep your exports. When a plan ends, SerpDad shows a 30-day countdown on Provider keys. After 30 days, your stored provider keys are erased. The Owner gets an email when the plan ends and 7 days before the erase date. You can select "Erase keys now" at any time. Keys still work at each provider until you revoke them there. ## Related - [Provider keys](../provider-keys/) - [Quickstart](../quickstart/) - [Workspace and team](../workspace-and-team/) - [FAQ](../faq/) --- # Free Intent Checker URL: https://serpdad.com/docs/intent-checker/ > The free Search intent checker counts the page types in today's top 10 Google results for one keyword, with no account, an email step for the full result, and daily limits. **In short:** The Search intent checker is a free tool for one keyword at a time. It reads today's top 10 Google results and counts how many are each page type. You do not need an account, and it does not use your provider keys. ## What it shows Type a keyword. SerpDad reads today's top 10 Google results and counts how many of them are each page type: - List - Product page - How-to - Comparison - Landing page - Forum thread Below the count, you see each ranking page and the page type it counts as. A sentence names the most common type in today's top results. The tool counts results. It does not say what a search engine rewards. ## Check a keyword 1. Open the Search intent checker. 2. Enter one keyword, up to 120 characters. 3. Pick the country. 4. Optional: under "What would you build?", pick the page type you expect. This lets you compare your guess with the count. 5. Submit. The first 3 results show straight away, with their page types. To see every ranking page, enter your email address, tick the consent box and select **Show all N results**. You can share a result with its link. ## Limits | Limit | Value | |---|---| | Keywords per check | 1 | | Checks per network per day | 20 | | Checks per minute | 10 per network | | Results shown before the email step | 3 | | Stored results | A keyword checked in the last 30 days shows the stored result | A network is one IPv4 address, or one IPv6 /64 range. If you check too fast, you see: "You are checking faster than the free tool allows. Wait a minute and try again." SerpDad pays for the tool, with a daily spending limit. When the day's limit is reached, keywords already checked still work. New keywords wait for the next day. ## Your email and data - To see the full result, you give your email address and agree to this text: "Email me about this result and about SerpDad. I can unsubscribe at any time. SerpDad stores my email address and the keyword I checked, as described in the privacy policy." - You can unsubscribe at any time. - The tool runs on SerpDad's own accounts. It never reads or shows any customer's data, and its results are kept apart from every workspace. ## From one keyword to a whole plan The checker looks at one keyword. A SerpDad plan does the same reading for your whole keyword list, groups keywords that share results into pages, and gives each keyword one owner page. See [Quickstart](../quickstart/). ## Related - [Quickstart](../quickstart/) - [Read the plan](../read-the-plan/) - [Run a plan](../run-a-plan/) - [FAQ](../faq/) --- # Glossary URL: https://serpdad.com/docs/glossary/ > Plain definitions of every SerpDad term, from the product vocabulary and the app's screens, in alphabetical order. **In short:** This page defines every SerpDad term in one or two plain sentences. Terms are in alphabetical order. Where a term has another name in the app, both names are listed. ## A **Actual vs estimate.** An actual is the cost a provider reported for a call. An estimate is SerpDad's figure from published prices and usage, used when the provider reports no cost. Estimates are always marked as estimates. **Adjustment.** A manual change to a workspace's usage record, made by SerpDad staff with a stated reason. **Admin.** A workspace role that manages provider keys, members, runs, briefs and sign-offs, but not billing. **AI Mode check.** A scheduled check of chosen focus keywords in Google AI Mode, on your DataForSEO key. It records which sources each answer cites and whether your site is among them. **AI Overview.** The AI-written summary Google shows above some results. SerpDad reads, from results it already fetched, whether one appears and which URLs it cites. **Allowance.** A monthly count of a per-use meter: drafted sections, voice passes, crawl pages and AI visibility checks. The plan sets no cap. Use is counted and shown. **Answer to beat.** The featured snippet or AI Overview shown in a brief as the bar to clear. Its label in the brief is "The answer Google shows now". **Assembly drafting.** How SerpDad drafts: the AI turns each brief section into sentences using only brief items, never facts from its own memory. **Audit log.** SerpDad's internal record of every staff action, with who did it, what, to whom and when. It cannot be edited. ## B **Block.** One step in a workflow, with typed inputs, outputs and settings. Blocks come from a fixed catalogue. **Bonus keyword.** See secondary keyword. **Branch.** A path out of a workflow block, such as "Is true" and "Is false". **Brief.** The writing plan for one standalone page: angle, outline with word budgets, terms, questions, and claims with sources. **Business-value read.** The presence of ads and shopping results in a keyword's results, read as a sign of commercial intent. ## C **Cannibalization.** Two of your pages chasing the same search phrase. SerpDad's plans give each keyword one owner page so planned pages never do this. **Claim.** A factual statement in a brief or draft, stored with a source link and a box a person ticks after checking it. Shown as F#. **Client.** In the Jobs hub, a project in your workspace that a job runs on. **Clustering anchor.** The keyword a page's group formed around. It equals the focus keyword unless a person changed the focus keyword. **Connection.** An outside service linked to your workspace or project, such as Slack, Search Console or a draft target. **Content audit.** The Improve page that sorts your site's pages into buckets from Search Console data: Quick win, Striking distance, Rework, Decay, Prune, Monitor and Keep. **Content score.** An advisory score from 0 to 100 for one draft version, made of eight sub-scores. It never blocks sign-off and does not predict rankings. **Contested keyword.** A keyword that ties exactly between two pages. It waits on the suggested page and goes to Review. **Cost gate.** The screen before a run that shows the dollar estimate on your own accounts, your balance and your cap. Nothing runs until someone approves. **Coverage.** The share of a brief's subtopics that are planned or dismissed. A brief exports only at 100%. **Credit, credit rate, credit policy.** Older billing units counted in keywords. They are retired. SerpDad now sells one monthly plan, and runs no longer use credits. **Customer.** A buying organisation. In the app, a customer is a workspace. ## D **Decay.** A page whose clicks fell more than 25% from at least 100 clicks, against the 28 days before. **Decision.** A stored call SerpDad made, such as a keyword's owner page or a page's format, with its receipt. **Dedicated page.** A search result whose whole page is about the phrase. The opposite of a section. **Differentiator.** An outline item in your brief that no ranking page has. It is left out of the coverage count. **Draft.** An article version written only from brief items. Every sentence has a type and cites its items. Versions never change. **Draft target.** A system where SerpDad can create drafts of signed articles: WordPress, Webflow, Shopify or Google Docs. SerpDad never publishes there. **Drift re-open.** A pinned keyword sent back to Review because a new run's results turned against the pin. ## E **Editor.** A workspace role that edits and verifies briefs, drafts and signs articles, and stages signed drafts. **Engine group.** The fixed set of workflow blocks that fetch results, group keywords, score pages, route around your pages, park weak pages and add secondary keywords, ending with the plan check. **Existing pages.** Your site's live URLs, from the results SerpDad fetched and from Search Console. The plan routes around them. **Experience interview.** 3 to 5 questions only a practitioner can answer. Each saved answer becomes an E# item a draft can cite. **Experience item.** A first-hand answer from the experience interview. Shown as E#. ## F **Fact library.** The list of every claim across your briefs and articles, with its source, last tick and where it is used. **Fair-use limit.** The one size limit on the plan: up to 200,000 keywords per run. **Focus keyword.** The keyword that names a page and leads its title, H1 and URL. Also called the founder keyword or leader. **Focus pin.** A person's choice of focus keyword for a page, kept on later runs. **Format.** The page type to build: list, how-to, comparison or landing. **Format vote.** Choosing the format from the most common page type among the top 10 results. **Founder keyword.** See focus keyword. **Free first plan.** One run before you subscribe: up to 1,000 keywords, briefs for the top 5 pages, secondary keywords off, once per verified user. **Freshness window.** How recent a stored result must be to reuse it. The default is 30 days. ## G **GSC avg.** A position taken from your Search Console average, shown when your page is past the top 10 or not in the fetched results. **GSC verdict.** The comparison of a planned page with your live pages: build a new page, optimize an existing one, or consolidate pages that compete. ## H **H2 section.** A small group of keywords folded into a related page as a heading, because it did not earn its own page. **Hub.** A top-level page in the plan, together with the sections folded into it. Hubs have names you can change. ## I **Impersonation.** SerpDad staff viewing the app as a customer sees it, view-only, with every change blocked and the session recorded. **In the lists.** The AI visibility view that finds list articles in your keywords' top 10 results, split into "Already listed" and "Not listed". ## J **Job.** A pre-built workflow you turn on for many clients by answering three questions. **Junk keyword.** A keyword you marked as worthless for a project. It leaves the plan and is never imported, fetched or billed again in that project. **Junk list.** A project's list of junked phrases. You can restore any of them. ## K **Keys pill.** The top bar status of your required keys, for example "2 of 2 valid". **Keyword.** One unique search phrase in a project, after removing exact duplicates. **Keyword inbox.** Search Console queries that no keyword in the project covers yet. They cost nothing until you route them. **Keywords stored.** The count of unique keywords across your workspace's live projects. It is a count, not a limit. ## L **Landlord panel.** SerpDad's internal admin area, used only by SerpDad staff. **Living plan.** A plan whose pages, briefs and human work are kept and matched up across re-runs instead of rebuilt. **Low-balance pause.** A run pauses when your DataForSEO balance drops below $2.00 and asks you to top up. ## M **Manager.** A workspace role that approves runs, settles reviews, generates briefs, invites members and signs articles. **Mixed-vintage plan.** A plan built from results read on different dates. The cost gate and receipts say so. **Monthly spend cap.** The most provider spend your workspace allows through SerpDad in a month. The suggested default is $50. ## N **Next actions.** The feed of what to do next across projects, each with a reason, a source, a receipt and one button. **Normalized phrase.** A keyword lowercased and trimmed, used only to find exact duplicates. ## O **Optimize, Optimize #N.** A verdict that says to improve a page your site already has. "#N" is its Search Console average position. **Outline approval.** Approving a page's outline on the Outlines page. In that path, it is the human approval of the article. **Owner.** The one workspace role that can do everything, including billing and deleting the workspace. **Owner approval line.** The per-run estimate above which an Owner or Admin must approve. Labelled "Owner approval above". The default is $25.00. **Owner page.** The one page a keyword belongs to. **Owner pin.** A person's choice of owner page for a keyword, made by moving it. SerpDad never moves a pinned keyword on its own. ## P **Page.** A group of keywords that one web page should serve. It is either standalone or an H2 section. **Pages compete.** On the plan tiles, the count of keywords two planned pages both target, always 0. As a verdict chip, two or more of your existing pages earn impressions for one planned page. **Parked.** A keyword kept in the plan sum without a page, because it has no search volume or nothing to join. **Plan.** The page plan a run builds. Also the one monthly SerpDad subscription. **Plan sum.** Keywords on new pages, plus keywords on existing pages, plus parked keywords, equals keywords routed. **Price band.** The monthly price a workspace pays, set by when it first pays: $15, $25 or $35. **Price lock.** A workspace keeps the band price it first paid for as long as it keeps paying. **Price sheet.** SerpDad's internal table of provider prices, used to estimate costs. **Project.** One site and one market inside a workspace. The market is United States, English, desktop, fixed at creation. **Provenance map.** The per-sentence record on a draft: its type and the item it cites. **Provider fetch.** A paid call to a data provider on your key. **Provider key.** Your own credential for DataForSEO, an AI provider, Spiral or Ahrefs, stored encrypted and shown only as its last 4 characters. ## Q **Question network.** The set of questions a page should answer, grouped by the kind of answer each needs. **Quote.** Exact words from a named person, with a source. Shown as Q#. ## R **Ranks #N.** A verdict that says your page appears at position N in the fetched top 10. **Read the published answer, never guess.** SerpDad's rule that every decision comes from counting Google's actual results, never from what the words seem to mean. **Receipt.** The saved evidence behind one decision: the top 10, the overlap, the fetch dates, the provider, the key and the model. **Receipts log.** The Write page that lists the receipts behind your content. **Reconciliation.** Matching each page of a new run to last run's page, first by focus keyword, then by its keywords. **Red flag.** A drafted sentence that asserts something checkable with no brief item behind it. It blocks sign-off. **Refresh toggle.** The choice on the cost gate to fetch results again for keywords that already have fresh ones. Off by default. **Related page.** Another standalone page whose results share one or two results with this page's, so they should link but stay separate. **Report a wrong call.** The link on every receipt and review card to tell SerpDad a decision looks wrong. **Re-run.** A new run on a project's stored keywords. It is free on SerpDad. **Review queue.** The list of calls that need a person. Only real ties and changes reach it. **Run.** One pass over a project: import, estimate, approval, fetch, grouping, checks and review. **Run trace.** SerpDad's internal timing record for each run step. ## S **Secondary keyword.** A keyword a page should also target, found from what the top pages also rank for. It is only ever on its own owner page. Also called a bonus keyword. **Section.** A search result that covers the phrase as one part of a bigger page. Also, see H2 section. **SERP.** Google's top 10 organic results for one keyword, in the project's market, stored with its fetch date. **SERP results.** The ten rows of a SERP: URL, rank, title, format and dedicated or section. **Settled call.** A small call SerpDad answers itself with its own pick, kept in history with a receipt. **Shared cache.** Stored search results and volumes reused to save provider cost. Each workspace's stored data serves only that workspace. **Signal 1: SERP overlap.** How many of two keywords' top 10 results are the same URL. At least the project's line (default 3) puts them on one page. **Signal 2: ranking-page footprint.** What else the top-ranking pages rank for. It finds a page's secondary keywords. **Signal 3: standalone scope.** How many of the top 10 are dedicated pages. It decides whether a page stands alone or becomes a section. **Sign-off.** A named person approving one exact draft version. Any edit removes it. **Spend ledger.** SerpDad's internal record of provider spend on each activity. **Stakes.** The pill on a review card: Low stakes, Worth a look, or Changes traffic, set by the searches a month the call moves. **Standing approval.** An Owner or Admin's approval for runs that start without a person, up to a per-run ceiling. **Superadmin.** A SerpDad staff role for the internal admin area. It is not a workspace role. **Suspension.** A staff action. A suspended user cannot sign in. A suspended workspace cannot start runs or make purchases. ## T **Template.** A ready-made workflow you copy into your workspace as a draft. **Topical map.** The view of the plan as hubs and sections, with Hub map, Tree and Radial modes. **Top-up pack.** An older one-off credit bundle. It is retired and cannot be bought. **Trigger.** The block that starts a workflow run, such as Manual, Schedule or Webhook. ## U **Unsourced sentence.** A sentence whose numbers, names, dates or quotes do not appear in its own cited items. It blocks sign-off. ## V **Verdict.** What the plan says to do with a page: New page, Optimize, Ranks #N, Pages compete or Parked. **Version.** A frozen copy of a workflow or a draft. Old versions never change. **Voice pass.** An optional rewrite of a checked draft in your voice, on your own Spiral key. Facts and quotes never change. ## W **Workflow.** A chain of blocks a trigger starts, run against one project per run. **Workspace.** Your team's space in SerpDad. It holds projects, members, provider keys, billing and the data bought with its keys. **Writer.** A workspace role that edits, verifies and exports briefs and drafts articles, but does not sign. ## Related - [SerpDad documentation](../index/) - [Read the plan](../read-the-plan/) - [FAQ](../faq/) --- # FAQ URL: https://serpdad.com/docs/faq/ > Answers to common questions about SerpDad, including rankings, publishing, provider keys, costs, limits, data and privacy, and cancelling. **In short:** These are the questions people ask most about SerpDad. Each answer stands on its own and links to the page with the details. ## About the product ### What does SerpDad do? SerpDad turns a keyword list into a page plan: which pages to build, which existing pages to improve, and why. It reads the top 10 Google results for each keyword and puts keywords on one page when their results share enough pages. Then it writes briefs, helps draft sourced articles, and tracks results. See [SerpDad documentation](../index/). ### Will SerpDad make my site rank? No tool can promise that. SerpDad helps you cover your topic fully, without overlaps or gaps. Results depend on your site, your content and your market. SerpDad describes what it found and never claims it caused a ranking change. ### Does SerpDad publish to my site? No. You publish. SerpDad creates drafts only: draft posts in WordPress, draft items in Webflow, hidden articles in Shopify, or Google Docs in your Drive. Someone with publish rights reviews them in your own system. See [Drafts and sign-off](../drafts-and-sign-off/). ### How does SerpDad decide which keywords share a page? It counts. When two keywords share at least 3 of their top 10 results (the default), they go on one page. SerpDad never merges keywords just because they look alike: it removes only exact duplicates. Each keyword gets exactly one owner page. Every decision has a receipt showing the results it was decided from. See [Run a plan](../run-a-plan/). ### Does SerpDad invent facts? No. Every claim in a brief needs a source and a person's tick. Drafts are written only from checked brief items, and a sentence with no source blocks sign-off. See [Briefs](../briefs/). ### Does the content score predict rankings? No. The content score is advice about one draft against its brief and the results SerpDad read. It never blocks sign-off and does not predict rank, traffic or clicks. See [Content score](../content-score/). ### Which markets does SerpDad support? Every project plans for United States, English, desktop. The market is fixed when the project is created. ### Is it for agencies? Yes. You can run each client as a project in one workspace and use Jobs to repeat work across clients. Or you can give each client its own workspace, with its own keys and billing. See [Workspace and team](../workspace-and-team/). ## Keys and costs ### Why do I need my own provider keys? So you pay providers their own prices, with no markup, and see every cost first. SerpDad sells software. It never resells provider usage. See [Provider keys](../provider-keys/). ### Which keys do I need? A DataForSEO key and one AI provider key. The AI providers are OpenRouter (recommended), Anthropic, OpenAI, Z.AI (GLM) and Moonshot (Kimi). Ahrefs, Spiral and Google Search Console are optional. ### What does a run cost on my providers? SerpDad estimates about $3.95 to $8.15 per 1,000 keywords, including 5 briefs. That figure comes from provider price pages and is not yet measured on live keys. Your cost gate shows the estimate for your own run, at your own account's prices, before anything is spent. ### Can I spend money by accident? Nothing that spends runs until someone approves the estimate. A monthly spend cap ($50 suggested) stops runs that would pass it. Runs above the owner approval line ($25.00 by default) need an Owner or Admin. Set a spend limit at each provider too, as a second guard. ### What happens if my DataForSEO balance runs low during a run? The run pauses when the balance drops below $2.00. Top up at DataForSEO, then select "Check key again". The run resumes and fetches only what is still missing, so nothing is paid twice. A paused run waits 72 hours before it fails cleanly, and your old plan stays live. ## Plan and limits ### How much does SerpDad cost? One plan per workspace per month. The first 30 paying workspaces pay $15, the next 70 pay $25, and everyone after pays $35. Your price is locked for life while your workspace keeps paying. See [Billing](../billing/). ### Is there a free trial? Your first plan is free up to 1,000 keywords, with no card. It runs once per verified user, in the first workspace you own. Your providers still bill you for what it uses on your keys. ### Is there a keyword limit? No. One run can hold up to 200,000 keywords. That is the only size limit, and it is there for fair use. SerpDad does not charge per keyword. ### Are re-runs free? Yes. Re-running a project's stored keywords has no SerpDad charge. You pay your providers only for results older than 30 days, refreshed results and new work. ### Are there limits on projects or members? No. There is no project limit and no member limit. ### Can I change bands? Bands are set by when you first pay, not by usage. Prices are in USD, and tax is added where it applies. ## Data and privacy ### How are my keys kept safe? Keys are encrypted, bound to your workspace and provider, and shown only as their last 4 characters. They never appear in logs, emails or links. Only the Owner and Admins can manage them, and changes ask for your password again. Search data bought with your keys is read only by your workspace's projects. ### Does SerpDad change anything in Search Console? No. Search Console access is read-only. If you disconnect, SerpDad stops syncing and keeps the data it already synced. ### Where does my text go when SerpDad writes? To your own AI provider account, on your key. That provider's terms decide whether it may use the text. If you turn on the voice pass, draft text goes to your own Spiral account, and the settings page shows Spiral's training policy first. ### What happens when I delete a workspace? The Owner types the workspace name and their password. SerpDad erases the provider keys, the stored search data, the Search Console connection and its synced data. Keys still work at each provider until you revoke them there. Deleted keys stay encrypted in backups for up to 12 months. ## Cancelling ### Can I cancel? Yes, from Billing, any time. The plan stays active until the end of the paid month. You keep your exports. Your early price ends when the subscription ends. ### What happens to my keys after I cancel? SerpDad shows a 30-day countdown after the plan ends. Then your stored provider keys are erased. The Owner gets an email when the plan ends and 7 days before the erase date. ## Related - [Quickstart](../quickstart/) - [Billing](../billing/) - [Provider keys](../provider-keys/) - [Get help](../support/) --- # Get help URL: https://serpdad.com/docs/support/ > How to contact SerpDad for product help, bugs, sales and partnerships, what to include in your email, and the company's contact details. **In short:** For product help, bug reports, sales, partnerships and everything else, email contact@serpdad.com. Include your workspace name and what you were doing, and we can help faster. ## How to reach us Email **contact@serpdad.com** for anything: help using SerpDad, a bug, sales or pricing for your team, a partnership, or something else. We answer by email. ## What to include in your email The more of this you include, the faster we can help: 1. **Your workspace name.** You can see it in the workspace switcher. 2. **The project name**, if the question is about a project. 3. **What you were doing**, step by step. 4. **What you expected to happen**, and what happened instead. 5. **The exact message** you saw, copied as text. 6. **The page address** from your browser. 7. **A run number**, if the question is about a run, for example "Run 3". 8. **A reference id**, if you saw the error page "Something broke on our side". The page shows a reference id we can look up. 9. **A screenshot**, if it helps. ## What never to send - **Never send a provider key, API password or token by email.** If a key was exposed, replace it at the provider and save the new key in **Workspace > Provider keys**. - Never send your SerpDad password or two-factor codes. ## Help you can find yourself | Question | Where to look | |---|---| | Setting up DataForSEO, your AI provider, Ahrefs or Spiral | [Provider keys](../provider-keys/) and the help link next to each key form | | A run paused or failed | The notice on the run page names the provider, the reason and the fix. See [Run a plan](../run-a-plan/). | | Your plan, invoices or card | **Workspace > Billing**. See [Billing](../billing/). | | A decision looks wrong | Select **Report a wrong call** on the receipt or review card | | A feature is marked Planned | Select **Ask for this** on its banner | | A word you do not know | [Glossary](../glossary/) | | Common questions | [FAQ](../faq/) | ## Company details | | | |---|---| | Company | SAAS SEO AGENCY LLC | | Phone | +1 (747) 365-5431 | | Email | contact@serpdad.com | ## Related - [FAQ](../faq/) - [Glossary](../glossary/) - [Provider keys](../provider-keys/) - [Billing](../billing/)