{"text_format":"1","workbook":"xlsx","n_sheets":12,"sheets":["Start Here","QA Dashboard","Strategy Map","Campaign Planner","Search Build","RSA Builder","Sitelinks & Assets","PMax Builder","Demand Gen Builder","UTM & Tracking QA","Audit Checklist","Field Rules"],"not_rendered":{"charts":0,"images":0,"macros":0,"external_links":0,"defined_names":0,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"Start Here","index":0,"n_rows":21,"n_cols":9,"rows_kept":21,"cut":false,"hidden":false,"merged":[[0,0,0,11],[1,0,1,11],[3,0,3,11],[4,4,4,11],[5,7,5,11],[6,8,6,11],[7,8,7,11],[16,1,16,11],[17,1,17,11],[18,1,18,11],[19,1,19,11],[20,1,20,11],[8,8,8,11],[9,8,9,11],[10,8,10,11],[11,8,11,11],[12,8,12,11],[13,8,13,11],[15,0,15,11]]}
["David Tamachi | Google Ads Structure & Launch QA Template"]
["Built for pipeline: a guided workbook for campaign architecture, asset validation, tracking QA, and pre-launch audits."]
[]
["Template Workflow"]
["1","Set the strategy","Use Strategy Map to define funnel role, intent, KPI, budget role, and landing-page logic before building.",null,"Client Setup"]
["2","Plan the structure","Use Campaign Planner to map names, budgets, geos, languages, conversion actions, audiences, and exclusions.",null,"Client / Brand",null,null,"Legend"]
["3","Build assets","Use the build tabs for Search, RSAs, sitelinks/assets, PMax, and Demand Gen. Formula columns validate lengths and missing fields.",null,"Website",null,null,"Editable input","Light green cells should be completed by the user."]
["4","QA tracking","Use UTM & Tracking QA to confirm final URLs, URL parameters, conversion actions, and CRM/offline conversion needs.",null,"Primary KPI",null,null,"Formula / QA","Light blue cells calculate character counts, URL checks, and readiness status."]
["5","Audit before launch","Use the Audit Checklist and QA Dashboard to find gaps before anything goes live.",null,"Monthly Budget",null,null,"Instruction / note","Grey cells provide education or implementation guidance."]
[null,null,null,null,"Launch Date",null,null,"Warning","Yellow/red fields need review before upload or launch."]
[null,null,null,null,"Geo / Market",null,null,"Launch-ready","Green QA fields indicate the current row passes checks."]
[null,null,null,null,"Languages",null,null,"Brand source","https://davidtamachi.ca/"]
[null,null,null,null,"Owner",null,null,"Google sources","See Field Rules tab for official reference URLs."]
[null,null,null,null,"Version","v1.0",null,"Tip","Filter rows by Include? = Yes and QA Flag = Ready before building."]
[]
["Education Notes"]
["Campaign architecture","Separate campaigns when budget, bidding, location, language, funnel stage, product/service group, or conversion objective needs different control."]
["Search structure","Group keywords by intent and message theme, not only by broad category. One ad group should be tight enough that one RSA can speak to it clearly."]
["RSA writing","Mix keyword relevance, benefits, proof points, CTAs, objection handlers, and funnel-stage messaging. Avoid many tiny variations of the same line."]
["PMax structure","Use asset groups when audience signal, landing page, product/service group, or creative angle differs meaningfully. Avoid over-splitting without conversion volume."]
["Tracking","Do not launch until primary/secondary conversions are defined, tested, and mapped to CRM/pipeline quality when relevant."]

{"sheet":"QA Dashboard","index":1,"n_rows":19,"n_cols":5,"rows_kept":19,"cut":false,"hidden":false,"merged":[[0,0,0,5],[1,0,1,5],[14,0,14,4]]}
["Launch QA Dashboard"]
["Top-level health check. Fix warnings in the source tabs before importing or launching."]
[]
["Area","Ready / Complete","Issues / Missing","Formula Source","How to Use"]
["Campaign Planner",{"$f":"COUNTIF('Campaign Planner'!R5:R64,\"Ready\")","v":2},{"$f":"COUNTIF('Campaign Planner'!R5:R64,\"Missing required fields\")","v":0},"Campaign Planner!R5:R64","Missing campaign name/objective/landing page/conversion action."]
["Search Build",{"$f":"COUNTIF('Search Build'!L5:L104,\"Ready\")","v":2},{"$f":"COUNTIF('Search Build'!L5:L104,\"Missing required fields\")+COUNTIF('Search Build'!K5:K104,\"Needs http/https\")","v":0},"Search Build!K:L","Missing campaign/ad group/keyword/final URL or bad URL format."]
["RSA Builder",{"$f":"COUNTIF('RSA Builder'!BP5:BP24,\"Ready\")","v":1},{"$f":"COUNTIF('RSA Builder'!A5:BP24,\"Too long\")+COUNTIF('RSA Builder'!BP5:BP24,\"Need 3+ headlines\")+COUNTIF('RSA Builder'!BP5:BP24,\"Need 2+ descriptions\")+COUNTIF('RSA Builder'!BP5:BP24,\"Missing required fields\")","v":0},"RSA Builder!A:BP","3+ headlines, 2+ descriptions, no length issues."]
["Sitelinks & Assets",{"$f":"COUNTIF('Sitelinks & Assets'!J5:J64,\"Ready\")","v":2},{"$f":"COUNTIF('Sitelinks & Assets'!J5:J64,\"Needs review\")+COUNTIF('Sitelinks & Assets'!J5:J64,\"Missing required fields\")","v":0},"Sitelinks & Assets!J","Sitelinks/callouts must respect limits and URLs."]
["PMax Builder",{"$f":"COUNTIF('PMax Builder'!CQ5:CQ24,\"Ready\")","v":1},{"$f":"COUNTIF('PMax Builder'!A5:CQ24,\"Too long\")+COUNTIF('PMax Builder'!CQ5:CQ24,\"Need 3+ headlines\")+COUNTIF('PMax Builder'!CQ5:CQ24,\"Need 1+ long headline\")+COUNTIF('PMax Builder'!CQ5:CQ24,\"Need 2+ descriptions\")+COUNTIF('PMax Builder'!CQ5:CQ24,\"Missing required fields\")","v":0},"PMax Builder!A:CQ","Checks minimum text assets, business name, URL, and length."]
["Demand Gen Builder",{"$f":"COUNTIF('Demand Gen Builder'!AQ5:AQ24,\"Ready\")","v":1},{"$f":"COUNTIF('Demand Gen Builder'!A5:AQ24,\"Too long\")+COUNTIF('Demand Gen Builder'!AQ5:AQ24,\"Missing required fields\")+COUNTIF('Demand Gen Builder'!AQ5:AQ24,\"Need creative assets\")","v":0},"Demand Gen Builder!A:AQ","Use in-platform preview and creative count checks."]
["UTM & Tracking QA",{"$f":"COUNTIF('UTM & Tracking QA'!L5:L64,\"Ready\")","v":2},{"$f":"COUNTIF('UTM & Tracking QA'!K5:L64,\"Missing*\")+COUNTIF('UTM & Tracking QA'!K5:L64,\"Needs*\")+COUNTIF('UTM & Tracking QA'!M5:M64,\"Contains spaces\")","v":58},"UTM & Tracking QA!K:M","Fix missing UTMs, bad URL formats, and spaces."]
["Audit Checklist",{"$f":"COUNTIF('Audit Checklist'!E5:E84,\"Done\")","v":0},{"$f":"COUNTIF('Audit Checklist'!E5:E84,\"Needs Review\")+COUNTIF('Audit Checklist'!E5:E84,\"Blocked\")+COUNTIF('Audit Checklist'!E5:E84,\"Not Started\")","v":80},"Audit Checklist!E5:E84","All required launch items should be Done or Not Applicable."]
[]
[]
["Launch Readiness"]
["Total current issues",{"$f":"SUM(C5:C12)","v":138}]
["Checklist completion",{"$f":"IFERROR(COUNTIF('Audit Checklist'!E5:E84,\"Done\")/COUNTA('Audit Checklist'!B5:B84),0)","v":0}]
["Launch status",{"$f":"IF(B16=0,\"Launch-ready based on current worksheet QA\",\"Needs review before launch\")","v":"Needs review before launch"}]
["Last updated","2026-05-04T02:51:12.226"]

{"sheet":"Strategy Map","index":2,"n_rows":20,"n_cols":9,"rows_kept":20,"cut":false,"hidden":false,"merged":[[0,0,0,8],[1,0,1,8],[11,0,11,8]]}
["Strategy Map"]
["Planning layer to connect campaign architecture to funnel stage, intent, KPI, and pipeline quality."]
[]
["Funnel Stage","User Intent","Recommended Campaign Types","Budget Role","Primary KPI","Landing Page Role","Audience / Signal Notes","Negative / Exclusion Notes","Decision Rule"]
["ToFu","Problem/category-aware","Demand Gen, Display, YouTube, broad non-brand Search, PMax prospecting","Create demand","Engaged sessions, micro-conversions, assisted pipeline","Guides, calculators, category pages","Affinity/in-market/custom segments; customer lists as signals","Exclude converters/customers where appropriate","Use when the market needs education before it searches or converts."]
["MoFu","Solution-aware research","Generic Search, PMax by service/product, Demand Gen remarketing","Capture consideration","Leads, form starts, SQLs","Product/service, comparison, proof pages","Remarketing, CRM lists, high-intent custom segments","Jobs/free/support/unrelated modifiers","Use when the query/audience shows commercial consideration."]
["BoFu","Brand/high intent/pricing/demo","Brand Search, high-intent Search, remarketing","Capture demand","SQLs, opps, revenue","Conversion-focused pages with proof and CTA","CRM, cart/form abandoners, demo-page visitors","Protect brand terms; exclude customers if acquisition-only","Use when intent is clear enough for a direct CTA."]
["Competitor","Comparison/switching","Competitor Search, comparison Demand Gen","Conquest carefully","Qualified leads, assisted pipeline","Comparison-safe page","Competitor keyword themes and compliant messaging","Avoid trademark misuse; add support/career negatives","Use when sales can handle comparison objections."]
["Retention","Existing customers/nurture","Customer Match, Demand Gen, PMax with exclusions","Expand value","Repeat purchase, upsell pipeline","Customer resources, upgrade pages","CRM lifecycle/value segments","Exclude acquisition campaigns","Separate when reporting should not dilute new acquisition."]
[]
[]
["Campaign Naming Convention Builder"]
["Component","Example","Why It Matters"]
["Brand prefix"," Client abbreviation","Keeps exports sortable."]
["Funnel","ToFu / MoFu / BoFu","Clarifies expected KPI."]
["Channel","Search / PMax / Demand Gen","Simplifies reporting filters."]
["Theme","Brand / Generic / Service","Makes campaign purpose visible."]
["Geo","CAN / ON / USA / QC","Separates markets when needed."]
["Language","EN / FR","Avoids copy/LP mismatch."]
["Version","May26 / v1","Useful for migrations and tests."]

{"sheet":"Campaign Planner","index":3,"n_rows":64,"n_cols":19,"rows_kept":64,"cut":false,"hidden":false,"merged":[[0,0,0,18],[1,0,1,18]]}
["Campaign Planner"]
["Map the campaign structure before implementation. Rows marked Include? = Yes are counted in the QA Dashboard."]
[]
["Include?","Funnel","Campaign Type","Campaign Name","Name Chars","Objective","Bid Strategy","Daily Budget","Geo Target","Language","Network / Inventory","Landing Page","Conversion Action","Audience / Signal","Exclusions","Owner","Build Status","QA Flag","Notes"]
["Yes","MoFu","Search"," MoFu - Search - Generic - ON - EN",{"$f":"IF(D5=\"\",\"\",LEN(D5))","v":34},"Lead Gen","Max Conversions",100.0,"Ontario","EN","Google Search","https://example.com/service","Primary Lead Form","In-market + remarketing observation","Jobs, free, support",null,"In Progress",{"$f":"IF(A5<>\"Yes\",\"Not in build\",IF(OR(D5=\"\",F5=\"\",L5=\"\",M5=\"\"),\"Missing required fields\",\"Ready\"))","v":"Ready"},"Replace sample values."]
["Yes","BoFu","Brand Search"," BoFu - Search - Brand - CAN - EN",33,"Lead Gen","Target CPA",50.0,"Canada","EN","Google Search","https://example.com/contact","Qualified Form Submit","All visitors observation","Competitor/support negatives",null,"Not Started","Ready","Brand capture."]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]
[null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null,null,"Not in build"]

{"sheet":"Search Build","index":4,"n_rows":104,"n_cols":12,"rows_kept":104,"cut":false,"hidden":false,"merged":[[0,0,0,11],[1,0,1,11]]}
["Search Build"]
["Build ad group and keyword themes. Keep each ad group tight enough that one RSA can match the whole search intent."]
[]
["Include?","Campaign Name","Ad Group","Match Type","Keyword","Final URL","Intent / Funnel","Max CPC","Negative Theme","Build Notes","URL Check","QA Flag"]
["Yes"," MoFu - Search - Generic - ON - EN","Service Theme A","Phrase","service keyword","https://example.com/service","MoFu",null,"jobs, free, support","Start with phrase/exact if budget is limited.",{"$f":"IF(F5=\"\",\"Missing URL\",IF(LEFT(F5,4)=\"http\",\"OK\",\"Needs http/https\"))","v":"OK"},{"$f":"IF(A5<>\"Yes\",\"Not in build\",IF(OR(B5=\"\",C5=\"\",D5=\"\",E5=\"\",F5=\"\"),\"Missing required fields\",IF(K5<>\"OK\",\"Needs review\",\"Ready\")))","v":"Ready"}]
["Yes"," MoFu - Search - Generic - ON - EN","Service Theme A","Exact","exact service keyword","https://example.com/service","MoFu",null,"jobs, free, support","High-intent exact variant.","OK","Ready"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]
[null,null,null,null,null,null,null,null,null,null,"Missing URL","Not in build"]

{"sheet":"RSA Builder","index":5,"n_rows":24,"n_cols":68,"rows_kept":24,"cut":false,"hidden":false,"merged":[[0,0,0,67],[1,0,1,67]]}
["RSA Builder"]
["Create responsive search ads with automatic character counts and row-level QA."]
[]
["Include?","Campaign","Ad Group","Final URL","Headline 1","H1 Chars","H1 QA","Headline 2","H2 Chars","H2 QA","Headline 3","H3 Chars","H3 QA","Headline 4","H4 Chars","H4 QA","Headline 5","H5 Chars","H5 QA","Headline 6","H6 Chars","H6 QA","Headline 7","H7 Chars","H7 QA","Headline 8","H8 Chars","H8 QA","Headline 9","H9 Chars","H9 QA","Headline 10","H10 Chars","H10 QA","Headline 11","H11 Chars","H11 QA","Headline 12","H12 Chars","H12 QA","Headline 13","H13 Chars","H13 QA","Headline 14","H14 Chars","H14 QA","Headline 15","H15 Chars","H15 QA","Description 1","D1 Chars","D1 QA","Description 2","D2 Chars","D2 QA","Description 3","D3 Chars","D3 QA","Description 4","D4 Chars","D4 QA","Path 1","Path 1 Chars","Path 1 QA","Path 2","Path 2 Chars","Path 2 QA","RSA QA"]
["Yes"," MoFu - Search - Generic - ON - EN","Service Theme A","https://example.com/service","Solve Pain Point",{"$f":"IF(E5=\"\",\"\",LEN(E5))","v":16},{"$f":"IF(E5=\"\",\"Blank\",IF(F5>30,\"Too long\",\"OK\"))","v":"OK"},"Service Keyword",{"$f":"IF(H5=\"\",\"\",LEN(H5))","v":15},{"$f":"IF(H5=\"\",\"Blank\",IF(I5>30,\"Too long\",\"OK\"))","v":"OK"},"Get A Free Quote",{"$f":"IF(K5=\"\",\"\",LEN(K5))","v":16},{"$f":"IF(K5=\"\",\"Blank\",IF(L5>30,\"Too long\",\"OK\"))","v":"OK"},"Trusted Local Experts",{"$f":"IF(N5=\"\",\"\",LEN(N5))","v":21},{"$f":"IF(N5=\"\",\"Blank\",IF(O5>30,\"Too long\",\"OK\"))","v":"OK"},"Fast Online Estimate",{"$f":"IF(Q5=\"\",\"\",LEN(Q5))","v":20},{"$f":"IF(Q5=\"\",\"Blank\",IF(R5>30,\"Too long\",\"OK\"))","v":"OK"},null,{"$f":"IF(T5=\"\",\"\",LEN(T5))","v":""},{"$f":"IF(T5=\"\",\"Blank\",IF(U5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(W5=\"\",\"\",LEN(W5))","v":""},{"$f":"IF(W5=\"\",\"Blank\",IF(X5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(Z5=\"\",\"\",LEN(Z5))","v":""},{"$f":"IF(Z5=\"\",\"Blank\",IF(AA5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AC5=\"\",\"\",LEN(AC5))","v":""},{"$f":"IF(AC5=\"\",\"Blank\",IF(AD5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AF5=\"\",\"\",LEN(AF5))","v":""},{"$f":"IF(AF5=\"\",\"Blank\",IF(AG5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AI5=\"\",\"\",LEN(AI5))","v":""},{"$f":"IF(AI5=\"\",\"Blank\",IF(AJ5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AL5=\"\",\"\",LEN(AL5))","v":""},{"$f":"IF(AL5=\"\",\"Blank\",IF(AM5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AO5=\"\",\"\",LEN(AO5))","v":""},{"$f":"IF(AO5=\"\",\"Blank\",IF(AP5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AR5=\"\",\"\",LEN(AR5))","v":""},{"$f":"IF(AR5=\"\",\"Blank\",IF(AS5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AU5=\"\",\"\",LEN(AU5))","v":""},{"$f":"IF(AU5=\"\",\"Blank\",IF(AV5>30,\"Too long\",\"OK\"))","v":"Blank"},"Clear benefit-focused description that supports the search intent.",{"$f":"IF(AX5=\"\",\"\",LEN(AX5))","v":66},{"$f":"IF(AX5=\"\",\"Blank\",IF(AY5>90,\"Too long\",\"OK\"))","v":"OK"},"Book a quick consultation and see whether this is the right fit.",{"$f":"IF(BA5=\"\",\"\",LEN(BA5))","v":64},{"$f":"IF(BA5=\"\",\"Blank\",IF(BB5>90,\"Too long\",\"OK\"))","v":"OK"},null,{"$f":"IF(BD5=\"\",\"\",LEN(BD5))","v":""},{"$f":"IF(BD5=\"\",\"Blank\",IF(BE5>90,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(BG5=\"\",\"\",LEN(BG5))","v":""},{"$f":"IF(BG5=\"\",\"Blank\",IF(BH5>90,\"Too long\",\"OK\"))","v":"Blank"},"service",{"$f":"IF(BJ5=\"\",\"\",LEN(BJ5))","v":7},{"$f":"IF(BJ5=\"\",\"Blank\",IF(BK5>15,\"Too long\",\"OK\"))","v":"OK"},"quote",{"$f":"IF(BM5=\"\",\"\",LEN(BM5))","v":5},{"$f":"IF(BM5=\"\",\"Blank\",IF(BN5>15,\"Too long\",\"OK\"))","v":"OK"},{"$f":"IF(A5<>\"Yes\",\"Not in build\",IF(OR(B5=\"\",C5=\"\",D5=\"\"),\"Missing required fields\",IF(COUNTIF(A5:BO5,\"Too long\")>0,\"Asset length issue\",IF((--(E5<>\"\")+--(H5<>\"\")+--(K5<>\"\")+--(N5<>\"\")+--(Q5<>\"\")+--(T5<>\"\")+--(W5<>\"\")+--(Z5<>\"\")+--(AC5<>\"\")+--(AF5<>\"\")+--(AI5<>\"\")+--(AL5<>\"\")+--(AO5<>\"\")+--(AR5<>\"\")+--(AU5<>\"\"))<3,\"Need 3+ headlines\",IF((--(AX5<>\"\")+--(BA5<>\"\")+--(BD5<>\"\")+--(BG5<>\"\"))<2,\"Need 2+ descriptions\",\"Ready\")))))","v":"Ready"}]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank","Not in build"]

{"sheet":"Sitelinks & Assets","index":6,"n_rows":64,"n_cols":11,"rows_kept":64,"cut":false,"hidden":false,"merged":[[0,0,0,10],[1,0,1,10]]}
["Sitelinks & Assets"]
["Plan sitelinks, callouts, structured snippets, image notes, and other reusable assets."]
[]
["Include?","Asset Type","Link / Text","Text Chars","Description Line 1","Desc 1 Chars","Description Line 2","Desc 2 Chars","Final URL","QA Flag","Notes"]
["Yes","Sitelink","Free Consultation",{"$f":"IF(C5=\"\",\"\",LEN(C5))","v":17},"Speak with an expert",{"$f":"IF(E5=\"\",\"\",LEN(E5))","v":20},"Get answers fast",{"$f":"IF(G5=\"\",\"\",LEN(G5))","v":16},"https://example.com/contact",{"$f":"IF(A5<>\"Yes\",\"Not in build\",IF(OR(B5=\"\",C5=\"\"),\"Missing required fields\",IF(AND(B5=\"Sitelink\",OR(D5>25,F5>35,H5>35,I5=\"\")),\"Needs review\",IF(AND(B5=\"Callout\",D5>25),\"Needs review\",\"Ready\"))))","v":"Ready"},"Sitelink: text <=25, descriptions <=35."]
["Yes","Callout","No Setup Fees",13,null,"",null,"",null,"Ready","Callout text should be concise."]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]
[null,null,null,"",null,"",null,"",null,"Not in build"]

{"sheet":"PMax Builder","index":7,"n_rows":24,"n_cols":95,"rows_kept":24,"cut":false,"hidden":false,"merged":[[0,0,0,94],[1,0,1,94]]}
["Performance Max Builder"]
["Build Performance Max asset groups with copy, signals, URL/listing logic, and asset count QA."]
[]
["Include?","Campaign","Asset Group","Final URL","Business Name","Business Chars","Business QA","CTA","Audience Signal","Listing Group / Feed Notes","Headline 1","H1 Chars","H1 QA","Headline 2","H2 Chars","H2 QA","Headline 3","H3 Chars","H3 QA","Headline 4","H4 Chars","H4 QA","Headline 5","H5 Chars","H5 QA","Headline 6","H6 Chars","H6 QA","Headline 7","H7 Chars","H7 QA","Headline 8","H8 Chars","H8 QA","Headline 9","H9 Chars","H9 QA","Headline 10","H10 Chars","H10 QA","Headline 11","H11 Chars","H11 QA","Headline 12","H12 Chars","H12 QA","Headline 13","H13 Chars","H13 QA","Headline 14","H14 Chars","H14 QA","Headline 15","H15 Chars","H15 QA","Long Headline 1","LH1 Chars","LH1 QA","Long Headline 2","LH2 Chars","LH2 QA","Long Headline 3","LH3 Chars","LH3 QA","Long Headline 4","LH4 Chars","LH4 QA","Long Headline 5","LH5 Chars","LH5 QA","Description 1","D1 Chars","D1 QA","Description 2","D2 Chars","D2 QA","Description 3","D3 Chars","D3 QA","Description 4","D4 Chars","D4 QA","Description 5","D5 Chars","D5 QA","Images Count","Logos Count","Videos Count","Path 1","Path 1 Chars","Path 1 QA","Path 2","Path 2 Chars","Path 2 QA","PMax QA"]
["Yes"," MoFu - PMax - Core Services - CAN - EN","Core Services","https://example.com/service","Brand Name",{"$f":"IF(E5=\"\",\"\",LEN(E5))","v":10},{"$f":"IF(E5=\"\",\"Blank\",IF(F5>25,\"Too long\",\"OK\"))","v":"OK"},"Learn More","Custom segment + customer list seed","Use relevant listing groups only.","Core Service",{"$f":"IF(K5=\"\",\"\",LEN(K5))","v":12},{"$f":"IF(K5=\"\",\"Blank\",IF(L5>30,\"Too long\",\"OK\"))","v":"OK"},"Get A Free Quote",{"$f":"IF(N5=\"\",\"\",LEN(N5))","v":16},{"$f":"IF(N5=\"\",\"Blank\",IF(O5>30,\"Too long\",\"OK\"))","v":"OK"},"Trusted Experts",{"$f":"IF(Q5=\"\",\"\",LEN(Q5))","v":15},{"$f":"IF(Q5=\"\",\"Blank\",IF(R5>30,\"Too long\",\"OK\"))","v":"OK"},"Fast Online Help",{"$f":"IF(T5=\"\",\"\",LEN(T5))","v":16},{"$f":"IF(T5=\"\",\"Blank\",IF(U5>30,\"Too long\",\"OK\"))","v":"OK"},"Built For Results",{"$f":"IF(W5=\"\",\"\",LEN(W5))","v":17},{"$f":"IF(W5=\"\",\"Blank\",IF(X5>30,\"Too long\",\"OK\"))","v":"OK"},null,{"$f":"IF(Z5=\"\",\"\",LEN(Z5))","v":""},{"$f":"IF(Z5=\"\",\"Blank\",IF(AA5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AC5=\"\",\"\",LEN(AC5))","v":""},{"$f":"IF(AC5=\"\",\"Blank\",IF(AD5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AF5=\"\",\"\",LEN(AF5))","v":""},{"$f":"IF(AF5=\"\",\"Blank\",IF(AG5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AI5=\"\",\"\",LEN(AI5))","v":""},{"$f":"IF(AI5=\"\",\"Blank\",IF(AJ5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AL5=\"\",\"\",LEN(AL5))","v":""},{"$f":"IF(AL5=\"\",\"Blank\",IF(AM5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AO5=\"\",\"\",LEN(AO5))","v":""},{"$f":"IF(AO5=\"\",\"Blank\",IF(AP5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AR5=\"\",\"\",LEN(AR5))","v":""},{"$f":"IF(AR5=\"\",\"Blank\",IF(AS5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AU5=\"\",\"\",LEN(AU5))","v":""},{"$f":"IF(AU5=\"\",\"Blank\",IF(AV5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AX5=\"\",\"\",LEN(AX5))","v":""},{"$f":"IF(AX5=\"\",\"Blank\",IF(AY5>30,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(BA5=\"\",\"\",LEN(BA5))","v":""},{"$f":"IF(BA5=\"\",\"Blank\",IF(BB5>30,\"Too long\",\"OK\"))","v":"Blank"},"A stronger way to solve the problem without wasting budget.",{"$f":"IF(BD5=\"\",\"\",LEN(BD5))","v":59},{"$f":"IF(BD5=\"\",\"Blank\",IF(BE5>90,\"Too long\",\"OK\"))","v":"OK"},"Start with an expert-built plan that connects spend to pipeline.",{"$f":"IF(BG5=\"\",\"\",LEN(BG5))","v":64},{"$f":"IF(BG5=\"\",\"Blank\",IF(BH5>90,\"Too long\",\"OK\"))","v":"OK"},null,{"$f":"IF(BJ5=\"\",\"\",LEN(BJ5))","v":""},{"$f":"IF(BJ5=\"\",\"Blank\",IF(BK5>90,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(BM5=\"\",\"\",LEN(BM5))","v":""},{"$f":"IF(BM5=\"\",\"Blank\",IF(BN5>90,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(BP5=\"\",\"\",LEN(BP5))","v":""},{"$f":"IF(BP5=\"\",\"Blank\",IF(BQ5>90,\"Too long\",\"OK\"))","v":"Blank"},"Clear benefit-focused description for PMax inventory.",{"$f":"IF(BS5=\"\",\"\",LEN(BS5))","v":53},{"$f":"IF(BS5=\"\",\"Blank\",IF(BT5>90,\"Too long\",\"OK\"))","v":"OK"},"Use proof, benefit, audience, and CTA variations.",{"$f":"IF(BV5=\"\",\"\",LEN(BV5))","v":49},{"$f":"IF(BV5=\"\",\"Blank\",IF(BW5>90,\"Too long\",\"OK\"))","v":"OK"},null,{"$f":"IF(BY5=\"\",\"\",LEN(BY5))","v":""},{"$f":"IF(BY5=\"\",\"Blank\",IF(BZ5>90,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(CB5=\"\",\"\",LEN(CB5))","v":""},{"$f":"IF(CB5=\"\",\"Blank\",IF(CC5>90,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(CE5=\"\",\"\",LEN(CE5))","v":""},{"$f":"IF(CE5=\"\",\"Blank\",IF(CF5>90,\"Too long\",\"OK\"))","v":"Blank"},6.0,1.0,1.0,"service",{"$f":"IF(CK5=\"\",\"\",LEN(CK5))","v":7},{"$f":"IF(CK5=\"\",\"Blank\",IF(CL5>15,\"Too long\",\"OK\"))","v":"OK"},"quote",{"$f":"IF(CN5=\"\",\"\",LEN(CN5))","v":5},{"$f":"IF(CN5=\"\",\"Blank\",IF(CO5>15,\"Too long\",\"OK\"))","v":"OK"},{"$f":"IF(A5<>\"Yes\",\"Not in build\",IF(OR(B5=\"\",C5=\"\",D5=\"\",E5=\"\"),\"Missing required fields\",IF(COUNTIF(A5:CP5,\"Too long\")>0,\"Asset length issue\",IF((--(K5<>\"\")+--(N5<>\"\")+--(Q5<>\"\")+--(T5<>\"\")+--(W5<>\"\")+--(Z5<>\"\")+--(AC5<>\"\")+--(AF5<>\"\")+--(AI5<>\"\")+--(AL5<>\"\")+--(AO5<>\"\")+--(AR5<>\"\")+--(AU5<>\"\")+--(AX5<>\"\")+--(BA5<>\"\"))<3,\"Need 3+ headlines\",IF((--(BD5<>\"\")+--(BG5<>\"\")+--(BJ5<>\"\")+--(BM5<>\"\")+--(BP5<>\"\"))<1,\"Need 1+ long headline\",IF((--(BS5<>\"\")+--(BV5<>\"\")+--(BY5<>\"\")+--(CB5<>\"\")+--(CE5<>\"\"))<2,\"Need 2+ descriptions\",\"Ready\"))))))","v":"Ready"}]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]
[null,null,null,null,null,"","Blank",null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"","Blank",null,"","Blank","Not in build"]

{"sheet":"Demand Gen Builder","index":8,"n_rows":24,"n_cols":43,"rows_kept":24,"cut":false,"hidden":false,"merged":[[0,0,0,42],[1,0,1,42]]}
["Demand Gen Builder"]
["Plan Demand Gen ads across image, carousel, video, and product-feed formats. Validate copy, creative availability, and tracking."]
[]
["Include?","Campaign","Ad Group","Ad Name","Final URL","Format","Creative / Asset Notes","Headline 1","H1 Chars","H1 QA","Headline 2","H2 Chars","H2 QA","Headline 3","H3 Chars","H3 QA","Headline 4","H4 Chars","H4 QA","Headline 5","H5 Chars","H5 QA","Description 1","D1 Chars","D1 QA","Description 2","D2 Chars","D2 QA","Description 3","D3 Chars","D3 QA","Description 4","D4 Chars","D4 QA","Description 5","D5 Chars","D5 QA","CTA","Image Count","Video Count","Product Feed?","Creative QA","Demand Gen QA"]
["Yes"," ToFu - Demand Gen - Prospecting - CAN - EN","Prospecting","Image Ad 1","https://example.com/guide","Single Image","Use high-quality, low-text image with clear subject.","Free Planning Guide",{"$f":"IF(H5=\"\",\"\",LEN(H5))","v":19},{"$f":"IF(H5=\"\",\"Blank\",IF(I5>30,\"Too long\",\"OK\"))","v":"OK"},"Solve The Problem",{"$f":"IF(K5=\"\",\"\",LEN(K5))","v":17},{"$f":"IF(K5=\"\",\"Blank\",IF(L5>30,\"Too long\",\"OK\"))","v":"OK"},"Expert-Led Insights",{"$f":"IF(N5=\"\",\"\",LEN(N5))","v":19},{"$f":"IF(N5=\"\",\"Blank\",IF(O5>30,\"Too long\",\"OK\"))","v":"OK"},"Built For Pipeline",{"$f":"IF(Q5=\"\",\"\",LEN(Q5))","v":18},{"$f":"IF(Q5=\"\",\"Blank\",IF(R5>30,\"Too long\",\"OK\"))","v":"OK"},"Start Learning Today",{"$f":"IF(T5=\"\",\"\",LEN(T5))","v":20},{"$f":"IF(T5=\"\",\"Blank\",IF(U5>30,\"Too long\",\"OK\"))","v":"OK"},"Download the guide and learn what to fix before scaling your ad spend.",{"$f":"IF(W5=\"\",\"\",LEN(W5))","v":70},{"$f":"IF(W5=\"\",\"Blank\",IF(X5>90,\"Too long\",\"OK\"))","v":"OK"},"Use practical steps to connect campaigns with qualified pipeline.",{"$f":"IF(Z5=\"\",\"\",LEN(Z5))","v":65},{"$f":"IF(Z5=\"\",\"Blank\",IF(AA5>90,\"Too long\",\"OK\"))","v":"OK"},null,{"$f":"IF(AC5=\"\",\"\",LEN(AC5))","v":""},{"$f":"IF(AC5=\"\",\"Blank\",IF(AD5>90,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AF5=\"\",\"\",LEN(AF5))","v":""},{"$f":"IF(AF5=\"\",\"Blank\",IF(AG5>90,\"Too long\",\"OK\"))","v":"Blank"},null,{"$f":"IF(AI5=\"\",\"\",LEN(AI5))","v":""},{"$f":"IF(AI5=\"\",\"Blank\",IF(AJ5>90,\"Too long\",\"OK\"))","v":"Blank"},"Learn More",3.0,0.0,"No",{"$f":"IF(A5<>\"Yes\",\"Not in build\",IF(AND(AM5=0,AN5=0),\"Need creative assets\",\"OK\"))","v":"OK"},{"$f":"IF(A5<>\"Yes\",\"Not in build\",IF(OR(B5=\"\",C5=\"\",D5=\"\",E5=\"\",F5=\"\"),\"Missing required fields\",IF(COUNTIF(A5:AP5,\"Too long\")>0,\"Asset length issue\",IF((--(H5<>\"\")+--(K5<>\"\")+--(N5<>\"\")+--(Q5<>\"\")+--(T5<>\"\"))<1,\"Need 1+ headline\",IF((--(W5<>\"\")+--(Z5<>\"\")+--(AC5<>\"\")+--(AF5<>\"\")+--(AI5<>\"\"))<1,\"Need 1+ description\",IF(AP5<>\"OK\",\"Need creative assets\",\"Ready\"))))))","v":"Ready"}]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]
[null,null,null,null,null,null,null,null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,"","Blank",null,null,null,null,"Not in build","Not in build"]

{"sheet":"UTM & Tracking QA","index":9,"n_rows":64,"n_cols":14,"rows_kept":64,"cut":false,"hidden":false,"merged":[[0,0,0,13],[1,0,1,13]]}
["UTM & Tracking QA"]
["Build consistent campaign URLs and confirm measurement before launch. This tab is intentionally strict."]
[]
["Include?","Campaign","Ad Group / Asset Group","Final URL","utm_source","utm_medium","utm_campaign","utm_content","utm_term","Full Tagged URL","URL QA","Tracking QA","UTM Formatting QA","Notes"]
["Yes"," MoFu - Search - Generic - ON - EN","Service Theme A","https://example.com/service","google","cpc","mofu-search-generic-on-en","rsa-service-theme-a","{keyword}",{"$f":"IF(D5=\"\",\"\",D5&IF(ISNUMBER(SEARCH(\"?\",D5)),\"&\",\"?\")&\"utm_source=\"&E5&\"&utm_medium=\"&F5&\"&utm_campaign=\"&G5&IF(H5<>\"\",\"&utm_content=\"&H5,\"\")&IF(I5<>\"\",\"&utm_term=\"&I5,\"\"))","v":"https://example.com/service&utm_source=google&utm_medium=cpc&utm_campaign=mofu-search-generic-on-en&utm_content=rsa-service-theme-a&utm_term={keyword}"},{"$f":"IF(D5=\"\",\"Missing URL\",IF(LEFT(D5,4)=\"http\",\"OK\",\"Needs http/https\"))","v":"OK"},{"$f":"IF(A5<>\"Yes\",\"Not in build\",IF(OR(E5=\"\",F5=\"\",G5=\"\"),\"Missing required UTM\",IF(K5<>\"OK\",\"Needs review\",\"Ready\")))","v":"Ready"},{"$f":"IF(A5<>\"Yes\",\"Not in build\",IF(OR(ISNUMBER(SEARCH(\" \",E5)),ISNUMBER(SEARCH(\" \",F5)),ISNUMBER(SEARCH(\" \",G5)),ISNUMBER(SEARCH(\" \",H5)),ISNUMBER(SEARCH(\" \",I5))),\"Contains spaces\",\"OK\"))","v":"OK"},"Use ValueTrack parameters if importing to Google Ads."]
["Yes"," ToFu - Demand Gen - Prospecting - CAN - EN","Prospecting","https://example.com/guide","google","demand-gen","tofu-demandgen-prospecting-can-en","image-ad-1",null,"https://example.com/guide&utm_source=google&utm_medium=demand-gen&utm_campaign=tofu-demandgen-prospecting-can-en&utm_content=image-ad-1","OK","Ready","OK","Check landing page and event tracking."]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]
[null,null,null,null,null,null,null,null,null,"","Missing URL","Not in build","Not in build"]

{"sheet":"Audit Checklist","index":10,"n_rows":84,"n_cols":7,"rows_kept":84,"cut":false,"hidden":false,"merged":[[0,0,0,6],[1,0,1,6]]}
["Pre-Launch Audit Checklist"]
["A human review checklist for settings, creative, tracking, landing pages, compliance, and post-launch monitoring."]
[]
["Phase","Area","Audit Item","Why It Matters","Status","Owner","Notes"]
["Foundation","Account","Account access, billing, permissions, and MCC ownership are confirmed.","Avoid launch blockers and unclear ownership.","Not Started"]
["Foundation","Structure","Campaign separation is based on budget, bidding, geo, language, funnel, or objective needs.","Prevents over-fragmentation.","Not Started"]
["Foundation","Budget","Daily budgets align with monthly pacing and expected CPC/CPA/ROAS.","Avoids underfunding or runaway spend.","Not Started"]
["Settings","Bidding","Bid strategy matches conversion volume and goal quality.","Smart bidding needs enough clean signals.","Not Started"]
["Settings","Locations","Geo targeting and presence settings are reviewed.","Prevents spend outside intended markets.","Not Started"]
["Settings","Languages","Language targeting matches copy and landing pages.","Avoids copy/LP mismatch.","Not Started"]
["Settings","Networks","Search partners/display expansion/final URL expansion are intentional.","Avoids accidental inventory expansion.","Not Started"]
["Settings","Exclusions","Negatives, brand exclusions, placement exclusions, and content suitability are reviewed.","Controls wasted spend and brand safety.","Not Started"]
["Search","Keywords","Keywords are grouped by intent and match type strategy is documented.","Improves control and message match.","Not Started"]
["Search","RSAs","Each ad group has enough headline/description variety and passes limits.","Improves ad strength and eligibility.","Not Started"]
["Assets","Sitelinks","Sitelinks are relevant and pass length/URL checks.","Improves CTR and user navigation.","Not Started"]
["PMax","Asset Groups","Asset group logic matches a product/service/audience/landing-page distinction.","Keeps automation organized.","Not Started"]
["PMax","Signals","Audience signals use meaningful customer lists, custom segments, and remarketing where available.","Guides learning.","Not Started"]
["Demand Gen","Creative","Creative formats, aspect ratios, and in-platform previews are reviewed.","Inventory can render differently.","Not Started"]
["Landing Pages","Message Match","Headline, proof, CTA, and form intent match the ad promise.","Improves conversion rate and lead quality.","Not Started"]
["Landing Pages","Forms","Forms are tested on desktop/mobile and route leads correctly.","Avoids lost leads.","Not Started"]
["Tracking","GA4","GA4 events/conversions are firing on key actions.","Ensures performance data is usable.","Not Started"]
["Tracking","GTM","GTM tags, triggers, variables, and consent logic are checked.","Prevents measurement gaps.","Not Started"]
["Tracking","Google Ads","Primary vs secondary conversion actions are reviewed.","Smart bidding should optimize to the right actions.","Not Started"]
["Tracking","Enhanced Conversions","Enhanced conversions are enabled/tested where appropriate.","Improves attribution resilience.","Not Started"]
["Tracking","Offline Conversions","CRM/offline conversion import plan is documented if lead quality matters.","Ties spend to pipeline.","Not Started"]
["Tracking","UTMs","UTMs are consistent, lowercase/hyphenated, and free of spaces.","Keeps reporting clean.","Not Started"]
["Policy","Claims","Ad copy claims are supportable and compliant for the industry.","Reduces disapprovals.","Not Started"]
["Policy","Trademark","Competitor/trademark language is reviewed before launch.","Avoids legal/policy issues.","Not Started"]
["Launch","Preview","Ads are previewed and final URLs are manually clicked/tested.","Catches rendering/routing problems.","Not Started"]
["Launch","Import","Google Ads Editor/import sheet is reviewed before posting.","Prevents bulk-upload mistakes.","Not Started"]
["Post-Launch","First 24 Hours","Spend, disapprovals, URL errors, and conversion firing are checked.","Catches urgent issues.","Not Started"]
["Post-Launch","First 72 Hours","Search terms, asset performance, conversion quality, and pacing are reviewed.","Prevents wasted spend.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]
["Custom",null,"Add client/account-specific audit item here.","Use for industry, stakeholder, legal, or CRM-specific checks.","Not Started"]

{"sheet":"Field Rules","index":11,"n_rows":17,"n_cols":8,"rows_kept":17,"cut":false,"hidden":false,"merged":[[0,0,0,7],[1,0,1,7]]}
["Field Rules & Source References"]
["Reference limits and build rules used by the workbook. Review official Google documentation periodically because specs can change."]
[]
["Area","Field / Asset","Limit / Rule","Applies To","Workbook Check","Implementation Note","Source URL","Last Checked"]
["Brand","Site positioning","Template tone inspired by DavidTamachi.ca","Workbook branding","Manual","Built around pipeline, measurement, and qualified growth language.","https://davidtamachi.ca/","2026-05-03"]
["RSA","Headlines","30 characters each; up to 15 headline assets","Search responsive search ads","LEN() <= 30","Use varied angles: keyword, benefit, proof, CTA, objection, urgency.","https://support.google.com/google-ads/answer/7684791?hl=en","2026-05-03"]
["RSA","Descriptions","90 characters each; up to 4 description assets","Search responsive search ads","LEN() <= 90","Use descriptions to add proof, context, CTA, and qualifier language.","https://support.google.com/google-ads/answer/7684791?hl=en","2026-05-03"]
["RSA","Path fields","15 characters each","Search ads","LEN() <= 15","Paths reinforce relevance; they do not need to be real folders.","https://support.google.com/google-ads/answer/6167114?hl=en","2026-05-03"]
["Sitelinks","Link text","25 characters in most languages","Sitelink assets","LEN() <= 25","Shorter link text can help more sitelinks show.","https://support.google.com/google-ads/answer/2375416?hl=en","2026-05-03"]
["Sitelinks","Descriptions","35 characters each","Sitelink assets","LEN() <= 35","Descriptions add context but may not always show.","https://www.portent.com/blog/ppc/what-are-google-ads-sitelinks-and-why-should-you-use-them.htm","2026-05-03"]
["PMax","Short headlines","30 characters max; 3 minimum, 15 maximum; include one 15 characters or less","Performance Max","LEN() <= 30 + count check","Provide distinct benefits and CTAs, not near-duplicates.","https://support.google.com/google-ads/answer/14528373?hl=en","2026-05-03"]
["PMax","Long headlines","90 characters max; 1 minimum, 5 maximum","Performance Max","LEN() <= 90 + count check","Long headline should stand alone.","https://support.google.com/google-ads/answer/14528373?hl=en","2026-05-03"]
["PMax","Descriptions","90 characters max; 2 minimum, 5 maximum","Performance Max","LEN() <= 90 + count check","Use benefit, proof, CTA, and qualifier variations.","https://support.google.com/google-ads/answer/14528373?hl=en","2026-05-03"]
["PMax","Business name","25 characters max","Performance Max","LEN() <= 25","Should match verified/domain/legal business name.","https://support.google.com/google-ads/answer/14528373?hl=en","2026-05-03"]
["Demand Gen","Creative specs","Review asset specs by format and preview in-platform","Demand Gen","Manual + count check","Creative can serve across YouTube, Discover, Gmail, and more.","https://support.google.com/google-ads/answer/13704860?hl=en","2026-05-03"]
["Demand Gen","Image count","Single image ads can support up to 20 images per ad","Demand Gen","Manual + count check","Use high-quality, low-text brand/inspirational images.","https://support.google.com/google-ads/answer/13704860?hl=en","2026-05-03"]
["Tracking","UTM source/medium/campaign","Required for clean reporting","UTM & Tracking QA","Blank/space checks","Use lowercase and hyphens/underscores; avoid spaces.","https://support.google.com/analytics/answer/10917952?hl=en","2026-05-03"]