Campaign and Lead Desk Official

Marketingv1.0.016 components

The marketing team's morning in one desk. Every campaign is checked before it goes out (links, personalisation, unsubscribe, audience size), every lead from a form is deduplicated, given an owner and written to the CRM, every landing page is checked daily, search movers are reported on Monday with the week's scorecard, and paid spend on TikTok and Bing is watched for anything off pace. Works with your email tool (Mailchimp, Brevo, Klaviyo, Customer.io and others), your forms, Google Analytics, Semrush and your CRM. Nothing is sent, paused or launched by the software: it checks and drafts, a person clicks. Comes with Mara, a Marketing Ops Coordinator.

Installs in about 25 min, verified with a smoke test.

Install this pack How the install works

How the pack is wired

One named coworker, the agents it orchestrates, and the data, knowledge, and tools underneath. This is the real manifest, not a mockup.

AI EmployeeMara, Marketing Ops Coordinator coordinator
Agentic TeamCampaign Helpdesk2 specialists
AgentsSpend WatcherCampaign QA CheckerLead RouterLanding Page CheckerSEO ReporterWeekly Scorecard Writer
Data & KnowledgeChannels read/writeCampaigns read/writeSends read/writeLeads read/writeLanding Pages read/writeSEO Watch read/writeWeekly Scorecard read/writeMarketing Playbook RAG
ToolsMailchimpTypeformGoogle AnalyticsStackone SemrushHubspotWeb ScrapingTurtle Notify

The employee routes each request to the right worker. Specialists collaborate behind a router in the agentic team, while single-purpose agents handle focused jobs. Agents read and write the tables, ground answers in the knowledge bases, and act through your connected tools. Every write is gated and traced.

The full blueprint

Every agent's tasks, every table's schema, every trigger. Read it all before you sign in.

Mara, Marketing Ops Coordinator

Calm, exact, allergic to a send that has not been checked. Mara keeps the morning list short and says which click fixes each item.

6 agents · 7 tables · 1 KBs
Campaign Helpdesk routing

The internal chat for the marketing team. Says where a campaign, a send or a lead stands, explains the QA and routing rules from the playbook, and reads the numbers. Never sends, pauses or launches anything.

Campaign Status SpecialistQA and Routing Rules Specialist
Spend Watcher
Analyst who reports pace against budget with the numbers shown
2 tasks · 7 in

Every weekday morning it reads yesterday's spend and results for each live paid campaign, updates the campaign, and drafts a pause note when spend or cost per lead is off pace. It never pauses anything.

CampaignsChannelsStackone TiktokadsStackone Bingads
  1. 01Campaign {{campaign}} on {{channel}}, budget {{budget}}, running {{start}} to {{end}}, spend so far {{spend}}, leads so far {{leads}}. Read the channel's platform and target cost per lead from the Channels table. If the channel is paid (TikTok or Bing), read yesterday's and the last three days' spend, clicks and leads from the ad platform. Compute the straight-line budget for the days elapsed and the three-day cost per lead. If the channel is email or organic, count the leads in the Leads table whose Source Campaign is this campaign instead. Output: The numbers you read, as plain text lines, or "no platform data" and why.
  2. 02Update the campaign: Spend To Date, Leads, Cost Per Lead. Then apply the playbook's pace rules. If on pace, write one line: "On pace: <spend> of <straight-line>, CPL <x> against <target>". If off pace, write the pause note: what is off, by how much, and the one change you would make. Never change Status. Plain text. Output: The one-line pace note or the pause note, plain text.
Campaign QA Checker
Proofreader who checks a send against a checklist and reports each item
2 tasks · 7 in

Reads the draft in the email tool and checks every item on the playbook's QA checklist: links, personalisation fallbacks, unsubscribe, audience size, subject length, from name. Writes what passed and what failed. Never sends.

SendsCampaignsMailchimpWeb Scraping
  1. 01Send {{send}} for campaign {{campaign}} in {{email_tool}}: draft "{{draft_name}}", audience "{{audience}}" (planned size {{audience_size}}), planned subject "{{subject}}". Read the draft from the email tool. List its subject, preview text, from name, audience and size, every link, and every personalisation tag with whether it has a fallback. Fetch each link and note any that do not resolve or point to a staging domain. Output: The facts about the draft as plain text lines, with each link and its result.
  2. 02Go through the playbook's QA checklist. Write one line per item: PASS or FAIL and why. If every item passes, set the send's Status to "QA passed"; if any fails, set it to "QA failed". Fill Subject and Audience Size from the draft if they were blank. End with one line: "Ready to send" or "Fix N items before sending". Never send or schedule. Plain text. Output: The checklist result, one line per item, plain text.
Lead Router
Router who applies the rules and records the reason
2 tasks · 6 in

When a lead arrives it checks the CRM by email and domain, applies the routing rules to pick an owner, writes the contact to the CRM with its source, and says what it did. Never emails the lead.

LeadsCampaignsHubspotTypeform
  1. 01Lead {{name}} <{{email}}> at {{company}}, from campaign "{{source_campaign}}" via {{form}}. Message: {{message}} Search the CRM by email, then by the company's domain. Note whether the contact exists, whether the company is a customer, and who owns either. Output: What the CRM holds for this person and company, plain text.
  2. 02Apply the playbook's routing rules. Set In CRM Already, Owner and Status on the lead (Routed, Not a fit or Duplicate). For a new or existing contact, create or update the CRM contact with source campaign and form as properties and put the CRM link on the lead. Add one to the source campaign's Leads count. Write the routing result: the decision, the rule, the owner, the CRM link. Never email the lead. Plain text. Output: The routing result, plain text.
Landing Page Checker
Tester who reports what a page does today against yesterday
2 tasks · 5 in

Loads each page, times it, checks the form is present and submits, reads the last seven days of visits and conversions from analytics, and flags slow pages, broken forms and conversion drops.

Landing PagesWeb ScrapingGoogle Analytics
  1. 01Page {{page}} at {{url}} for campaign {{campaign}}. Last check: {{visits}} visits, {{conversions}} conversions. Fetch the page, time it, look for the form and its submit button. Read the last 7 days of visits and conversions from analytics. Output: Load time, form present or not, visits, conversions, as plain text lines.
  2. 02Update Visits 7d, Conversions 7d, Conversion Rate, Load Seconds and Last Checked. Set Status per the rules (Healthy, Slow, Form broken, Conversion drop). Write two lines: what you found and what to do about it. Plain text. Output: The two-line check, plain text.
SEO Reporter
Analyst who reports movers with a specific next step
2 tasks · 1 in

Every Monday it reads position changes for your tracked queries and pages from Semrush, writes the movers into SEO Watch with a concrete suggestion for each, and drafts three content ideas.

Seo WatchLanding PagesStackone Semrush
  1. 01Week of {{week}}. Read the tracked queries and pages from Semrush with position, weekly change and clicks. List the five biggest gainers and the five biggest losers. Output: The movers with their numbers, plain text.
  2. 02Create one SEO Watch row per mover (Item, Kind, Position, Change, Clicks 7d, Suggestion, Week, Status New) with a specific suggestion each. Then write three content ideas the numbers support, one line each. Plain text. Output: The rows created and the three ideas, plain text.
Weekly Scorecard Writer
Reporter who writes the numbers and three decisions
2 tasks · 1 in

Counts spend, leads and cost per lead by channel for last week, names the best and worst campaign, lists three decisions, writes the scorecard row and emails it to the marketing lead.

CampaignsSendsLeadsLanding PagesChannelsWeekly ScorecardTurtle Notify
  1. 01Week of {{week}}. From the tables: spend and leads by channel for last week, cost per lead per channel and per campaign, sends that went out with opens and clicks, landing pages not Healthy, leads not yet routed. Output: The numbers as plain text lines.
  2. 02Write the scorecard: the numbers as short lines, "Best:" and "Worst:" campaign with cost per lead, "Watch:" the pages and sends with issues, "Decisions this week:" three one-sentence decisions. Create the Weekly Scorecard row. Send it with Turtle Notify to the marketing lead. Under 250 words, plain text. Output: The scorecard as sent, plain text.
Channels
Where you spend and send. One row per channel with its budget and the cost per lead you are willing to pay.
8 cols
Channel textKind selectPlatform textMonthly Budget numberTarget Cost Per Lead numberOwner userStatus selectNotes text
Campaigns
One row per campaign, on any channel, with its budget, results and status. Live campaigns are watched every morning.
13 cols
Campaign textChannel foreign_keyGoal textStart dateEnd dateBudget numberSpend To Date numberLeads numberCost Per Lead numberStatus selectPace Note agent_outputOwner userNotes text
Sends
Every email campaign send, checked before it goes out. The QA checker reads the draft in your email tool and writes what it found; a person sends.
13 cols
Send textCampaign foreign_keyEmail Tool selectDraft Name textAudience textAudience Size numberSubject textPlanned Time textQA Result agent_outputStatus selectOpens numberClicks numberSent By user
Leads
Every lead from a form, a landing page or a lead ad. Deduplicated against the CRM, given an owner and written to the CRM on arrival.
12 cols
Name textEmail emailCompany textSource Campaign foreign_keyForm textMessage textReceived dateIn CRM Already selectRouting agent_outputOwner userStatus selectCRM Link url
Landing Pages
Every live landing page, checked daily: does it load fast, does the form submit, is the conversion rate holding.
10 cols
Page textURL urlCampaign foreign_keyVisits 7d numberConversions 7d numberConversion Rate textLoad Seconds numberCheck agent_outputStatus selectLast Checked date
SEO Watch
The queries and pages that moved this week, from Semrush, with a suggestion for each.
8 cols
Item textKind selectPosition numberChange numberClicks 7d numberSuggestion textWeek dateStatus select
Weekly Scorecard
The numbers the marketing lead reads on Monday, written by the desk.
8 cols
Week dateSpend numberLeads numberCost Per Lead numberBest Campaign textWorst Campaign textScorecard agent_outputDecisions text
Marketing Playbook

Who you market to, the campaign QA checklist, the lead routing rules, the pace rules for paid spend, and the voice. Replace the starter text with your own.

2 sources

How the install works

  1. Overview. You see the entire department before anything is created: every component, every tool it needs connected.
  2. Setup questions. A few plain-language choices set your sources, limits, and approval gates, so the department arrives configured for your rules, not defaults.
  3. Conflicts. Nothing in your workspace gets clobbered: anything that already exists, you keep, rename, or replace.
  4. Install. Tables → knowledge → agents → wiring → employee, in dependency order, ending in a smoke test that proves it works.
  5. Done. A working department, not a project plan. Open your new coworker and assign the first task.

Setup asks the governance question before anything runs: for example, should the employee require human approval before sending external emails?

Built on

Connects to

MailchimpTypeformGoogle AnalyticsStackone SemrushHubspotWeb ScrapingTurtle Notify

Governance defaults

  • Per-table Read / Create / Update / Delete grants, Delete off by default
  • Approval gates on external writes (email, records) until you loosen them
  • Budget ceiling and run-trace on every component

More like this

All packs