{
 "schema": "aiblocks-page/1",
 "id": "agency-sales-data-extraction-agent",
 "type": "agent",
 "name": "Sales data extraction planner",
 "summary": "Pull month to date and year to date sales numbers out of messy Excel reports into one clean table, with a log of skipped rows.",
 "headline": "Sales data extraction planner",
 "subhead": "Give it your Excel or CSV sales reports and your list of reps. It maps the columns, finds out which sheet holds which figures and pulls each rep's numbers into one table. You get the clean table, a quota attainment column and an import log of rows that failed or did not match.",
 "job": {
  "id": "track-numbers",
  "name": "Track your numbers"
 },
 "level": "intermediate",
 "thinking": "high",
 "tested": true,
 "updated": "2026-11-03",
 "first_published": "2026-10-26",
 "inputs": [
  {
   "type": "spreadsheet",
   "required": true,
   "label": "Spreadsheet",
   "what": "a spreadsheet with its data, formulas and charts"
  },
  {
   "type": "source_text",
   "required": false,
   "label": "Source text",
   "what": "a long source in full: an article, a video or talk transcript, or notes from a book, with its title, author and link"
  }
 ],
 "outputs": [
  {
   "type": "spreadsheet",
   "required": true,
   "label": "Spreadsheet",
   "what": "a spreadsheet with its data, formulas and charts"
  },
  {
   "type": "audit_report",
   "required": true,
   "label": "Audit report",
   "what": "findings with evidence, severity, missing inputs and next actions"
  }
 ],
 "you_give": [
  "Your sales Excel or CSV files, attached or pasted, with the sheet names",
  "Your list of reps, with full names and emails, so rows can be matched",
  "What each figure means, if the names are unclear, such as whether a \"Total\" column is revenue",
  "Whether a file is a new version of an earlier one (optional)",
  "Quotas, if they are not already in the files (optional)"
 ],
 "you_get": [
  "A column map that shows which column in each file became revenue, units, deals or quota",
  "A clean table with one row per rep, per sheet type, with the source file and sheet named",
  "Quota attainment for each row that has both revenue and quota",
  "An import log that counts rows read, kept, failed and skipped, with the reason",
  "A list of rows that did not match a rep, so you can fix the names",
  "Open checks for you to settle before you use the numbers"
 ],
 "use_when": [
  "Your reps or regions each send a sales workbook, and the column names do not match.",
  "You need month to date and year to date figures from many sheets, as one table.",
  "You want a record of what was read, what was skipped and why, before you build a report from it.",
  "A report is wrong, and you need to trace each number back to its file and sheet."
 ],
 "skip_when": [
  "You already have one clean table and want a report by territory and rep: use the Sales data consolidation planner.",
  "You want to review deal health or forecast a quarter from a CRM export: use the Sales pipeline analyst.",
  "You want an AI to fill in a CRM record from a call note: use the CRM activity logger.",
  "You need a script that watches a folder and writes to a database. Ask the AI for code, then have a developer run and check it."
 ],
 "output_sample": {
  "input": [
   "Your sales Excel or CSV files, with sheet names",
   "Your list of reps with full names and emails",
   "What each sheet type means, if unclear",
   "Quotas, if they are not in the files (optional)"
  ],
  "prerequisites": [
   "An AI that can read attached spreadsheets, or the sheets copied in as text",
   "A rep list to match names against"
  ],
  "output": [
   {
    "name": "Column map",
    "contains": "Each column you used and the standard name it was matched to."
   },
   {
    "name": "Extracted metrics",
    "contains": "Revenue, units, deals, quota and attainment by rep and sheet type, with the source named."
   },
   {
    "name": "Import log",
    "contains": "Rows read, kept, failed and skipped for each sheet, with reasons."
   },
   {
    "name": "Unmatched rows",
    "contains": "Rows that did not match a rep, with the closest name and what to fix."
   },
   {
    "name": "Open checks",
    "contains": "Figures and matches to confirm against the original files."
   }
  ]
 },
 "output_shape": "COLUMN MAP\n  <file> | <sheet> | <column as written> | <standard name> | <how sure>\n\nEXTRACTED METRICS\n  <rep> | <sheet type, MTD, YTD or Year End> | <revenue> | <units> | <deals> | <quota> | <attainment %, or n/a> | <file and sheet>\n\nIMPORT LOG\n  <file> | <sheet> | Rows read <n> | Kept <n> | Failed <n> | Skipped <n> | <reasons>\n\nUNMATCHED ROWS\n  <row as written> | <closest rep name, if any> | <what to fix>\n\nOPEN CHECKS\n  <item> | <how to settle it>",
 "how_to_use": [
  "Add the pack to your AI as a skill. Or open a new chat and paste SKILL.md, then references/source-agent.md.",
  "Attach your Excel or CSV files if your AI accepts files. If not, copy each sheet in as text and name the sheet above it.",
  "Paste your list of reps with full names and emails. Say what each sheet type means, such as \"MTD is month to date\".",
  "Say \"Extract the metrics and show the column map and import log\".",
  "Read the column map first. Correct any wrong match, such as a column read as revenue that is really units.",
  "Check three rows against the original files. When they match, use the table for your report."
 ],
 "checks": [
  "The result addresses your actual task and cites the evidence used.",
  "Examples, role-play experience and targets are kept separate from verified results.",
  "Claims of tests, memory, tool access or completed actions match what actually happened."
 ],
 "next": [
  {
   "name": "Weekly store ad performance reviewer",
   "url": "https://useaiblocks.com/skills/weekly-store-ad-pulse-checker",
   "why": "Weekly store ad performance reviewer"
  }
 ],
 "source": {
  "by": "Michael Sitarzewski and Agency Agents contributors",
  "repo": "msitarzewski/agency-agents",
  "url": "https://github.com/msitarzewski/agency-agents/blob/b37b5bb33b78f2c1d6567d98e25ca818e3259219/specialized/sales-data-extraction-agent.md",
  "licence": "MIT",
  "original_name": "Sales Data Extraction Agent",
  "commit": "b37b5bb33b78f2c1d6567d98e25ca818e3259219"
 },
 "credits": [
  {
   "title": "Sales Data Extraction Agent",
   "by": "Michael Sitarzewski and Agency Agents contributors",
   "url": "https://github.com/msitarzewski/agency-agents/blob/b37b5bb33b78f2c1d6567d98e25ca818e3259219/specialized/sales-data-extraction-agent.md",
   "used": "Original agent profile, preserved in references/source-agent.md; AI Blocks adds setup and review instructions."
  }
 ],
 "files": [
  "LICENSE",
  "references/source-agent.md",
  "SETUP.md",
  "source.json"
 ],
 "links": {
  "page": "https://useaiblocks.com/agents/agency-sales-data-extraction-agent",
  "markdown": "https://useaiblocks.com/agents/agency-sales-data-extraction-agent.md",
  "json": "https://useaiblocks.com/agents/agency-sales-data-extraction-agent.json",
  "instructions": "https://useaiblocks.com/skills/agency-sales-data-extraction-agent/SKILL.md",
  "download": "https://useaiblocks.com/skills/agency-sales-data-extraction-agent.zip",
  "api_item": "https://useaiblocks.com/api/v1/items/agency-sales-data-extraction-agent",
  "api_document": "https://useaiblocks.com/api/v1/documents/agent/agency-sales-data-extraction-agent",
  "mcp": "https://useaiblocks.com/mcp"
 }
}
