AI for marketing agencies: every client account, every channel, in one chat.
Connect HubSpot, Google Ads, Meta Ads, GA4, Klaviyo, Slack, Gmail, and Drive through read-only connectors. Ask any question across every client account in plain language and get cited answers. No dashboards, no exports, no SQL.
Read-only access. 30-day free trial. Cancel anytime.
- No changes to your connected business systems. CorpusIQ saves its own settings and your definitions.
- Checked by an outside auditor
- CorpusIQ does not train models on customer data
- Works with ChatGPT, Claude, Perplexity and Slack
Client C spent more than it returned this quarter. Client A returned the most per dollar. Client B is above break-even, but thin.
Illustrative example. Not real client data.
Shopify
QuickBooks
Stripe
Meta Ads
Google Ads
Klaviyo
Google Analytics 4
HubSpot
Gmail
Slack
Google Drive
Outlook
Mailchimp
Etsy
TikTok
Instagram
Facebook
YouTube
Google Sheets
Google Docs
Google Calendar
Google Search Console
OneDrive
Dropbox
Calendly
PostHog
Semrush
Ahrefs
Axonaut
SHOPLINEAirtable
PostgreSQL
SQL Server
AWS S3
Azure Cosmos DB
Every client runs on a different stack. None of the numbers agree.
The platforms grade themselves.
Google Ads and Meta Ads each claim credit for the same sale. Your CRM and your invoices say something else.
You can't check it.
A number in a client report with no source is a risk. Every CorpusIQ answer shows where each number came from.
Every client counts differently.
Attribution, retainer, and scope rules change per client. Ask in plain language and the answer is scoped to the client by name.
It takes an analyst an afternoon.
Cross-tool questions across a client roster should not need exports, BI tooling, or SQL.
Real questions that take an analyst an afternoon and CorpusIQ seconds.
Know which client accounts make you money.
Where the work and the leads come from, per client.
Which client is most behind on this month's deliverables across the pipeline?Where did each client's leads come from in the last 30 days?What did the GA4 numbers say about the campaign we ran for Beacon?Summarize every Slack thread mentioning the Acme renewal this week.Every account you can reach, by customer ID.
List every Google Ads account we can reach, with customer ID and parent manager.Show Google Ads performance for one client customer ID over the last 30 days.Reads your clients' tools. Changes nothing in them.
one connection → every client account
read-only · sources on every answer ✓Security detailsOne question. One cited answer. No spreadsheet stitching.
Every account in one chat
HubSpot, Google Ads, Meta Ads, GA4, Klaviyo, Mailchimp, Slack, Gmail, Drive. CorpusIQ reads across the agency stack and answers per client, not per platform.
Scope drift, caught early
Ask if any client's project notes drifted from the signed SOW. The assistant pulls Drive and Slack and tells you which clients are running over scope, before write-off.
True client ROAS
Cross-channel paid spend (Google + Meta) against revenue per client (HubSpot + invoiced amount). One question, one cited answer, no spreadsheet stitching.
Retainer profitability
Hours logged plus billable rate against retainer fee. Spot the underwater client before next month's invoice goes out.
Others give AI access. We give it understanding.
A plain client question. An answer with sources you can check.
Which clients are running over scope?
A confident answer. No source.
Which clients are running over scope?
Two clients have work in Slack and Drive that is not in the signed SOW. One added deliverables last sprint. The other has a revised brief with no change order.
Illustrative example. Not real client data.
Send the client the number, not the spreadsheet.
One question, one dashboard, every figure traced to the tool it came from.
Illustrative example. Not real client data.
Many client accounts, one connection
An agency should not need a separate login for every client it manages. For Google Ads, connect one agency-controlled Google identity that sits above a manager account. CorpusIQ then reads the client accounts linked beneath it, including accounts sitting under a sub-manager.
Ask for one client by customer ID and CorpusIQ resolves the manager account that query needs. You do not manage that plumbing by hand.
- 1
A Google Ads manager account
Also called an MCC. It is a separate account built to sit above client advertiser accounts. An ordinary advertiser account does not turn into one.
Manager account
- 2
One agency-controlled Google identity
Something like ads-reporting@youragency.com, held by the agency rather than one employee. It has to be a real user that can complete Google sign-in, not a group or a forwarding alias.
One agency identity
- 3
Client accounts linked into the hierarchy
Each client advertiser account sits directly beneath the agency manager account, or beneath a linked sub-manager. A pending invitation is not an active link.
Clients linked
- 4
Manager-level access for that identity
Google Ads roles inherit down the hierarchy. Read-only access is enough, and CorpusIQ exposes read-only reporting tools whatever the role says.
Read-only is enough
Clients keep their own access throughout. Linking an advertiser account to a manager account does not remove the client's own users, and a client administrator can unlink the relationship later. Your staff keep their personal Google users for day to day work in Google Ads. The connected identity is only the one CorpusIQ reports through.
This is how IT stays in control. Each tool is set to on or off. On: AI can look at the numbers, never change them. Off: AI can't see that tool at all.
No changes to your connected business systems. CorpusIQ saves its own settings and your definitions.
What your IT person will ask, answered once.
- What we keepWe keep your rules, like how you define revenue. We don't store your numbers or your customer records.
- Checked by an outside auditorCASA Tier 2 certified by DEKRA. See the certificate.
- CorpusIQ does not train models on customer dataHow data is handled is written out on the security page.
- IT decides what AI can touchAdmins choose which tools AI can reach. Hosted on Microsoft Azure.
- The sample company connects nothingIt runs on sample data. Nothing is connected or sent.
Start with one client. Ask these on day one.
Skip the sample business. Connect one client account and ask:
- Which campaigns spent the most for this client last month, and what did they return?
- Do Google Ads and Meta agree on conversions, or are we double-counting?
- How did this client's cost per purchase change month over month?
- What should I put in this client's monthly report?
Common questions
What agency owners ask before they connect a client account.
Run a non-marketing services firm? See other vertical playbooks. Sell on Shopify? Start here for Shopify. Looking at this by function instead? See the operations team view.
Which agency tools does CorpusIQ connect to?
HubSpot, Google Ads, Meta Ads, Google Analytics 4, Klaviyo, Mailchimp, Slack, Gmail or Outlook, Google Drive or OneDrive or Dropbox, Google Sheets, Airtable, QuickBooks. 40+ live connectors in total; agencies typically wire 6 to 9.
Can the assistant answer per client, not just account-wide?
Yes. Ask in plain language: 'show me Acme's spend vs revenue this quarter,' or 'summarize every Slack thread mentioning Beacon this week.' The assistant scopes to the client by name across every connected tool.
How is this different from HubSpot reports?
HubSpot reports stay inside HubSpot. CorpusIQ pulls from HubSpot plus Google Ads, Meta Ads, GA4, Klaviyo, Slack, and Gmail in the same question. Cross-tool answers without exports or BI tooling.
Can my client logins stay separate from my agency's logins?
Yes. CorpusIQ uses read-only access per tool and respects whatever access the connected identity already has. For Google Ads the cleanest pattern is one agency-controlled identity sitting above a manager account, so client passwords never change hands.
Who authorizes access to a client account, the client or the agency?
Both, in sequence, and neither hands over a password. The agency authorizes CorpusIQ through its own Google identity and grants read-only scopes. The client then authorizes the data, either by linking its advertiser account beneath your manager account or by granting your designated agency identity direct access to that one account. A client administrator can unlink the relationship later, and your staff keep their own personal logins for day to day work in Google Ads.
Do we need one CorpusIQ connection per client?
No. For Google Ads, connect one agency-controlled Google identity that holds access at the manager account level. CorpusIQ discovers the client accounts linked beneath it, including accounts under a sub-manager, and works out which manager account a given query needs. Logging out and reconnecting per client is not how it is meant to work.
What if a client will not link its account to our manager account?
Two ways round it. Link the advertiser account into your manager hierarchy, or have the client grant your designated agency identity direct access to that one account. A CorpusIQ connection authenticates a single Google identity, so it only reads accounts that identity can reach. If neither option is open, contact support before you onboard that account, and never send passwords or OAuth codes.
A client account is missing from CorpusIQ. What is wrong?
Sign in to Google Ads as the connected identity and check the account is visible there. If it is missing in Google Ads it will be missing in CorpusIQ. Reconnecting OAuth does not repair an unaccepted manager link or a missing Google Ads role, so fix the hierarchy or the access in Google Ads first, then ask CorpusIQ to list accounts again.
Can CorpusIQ change anything inside a client's ad account?
No. It reads account, campaign, ad group, ad, keyword, search term, geographic, device, and demographic performance data. It does not create campaigns, change bids or budgets, pause ads, accept manager links, or change user permissions. Those stay in Google Ads.
Does CorpusIQ store our client data?
Direct MCP does not retain raw customer files or full connector response payloads. Local AUDIT logs record raw query text and tool parameters plus bounded result summaries; the Azure Log Analytics workspace retains those logs for 30 days. Optional indexed search has a separate lifecycle. Authorized source context is sent to the selected AI client, whose plan and settings govern conversation handling.
Connect your stack and answer every client question in one chat.
Pricing: Solo $29.95 per month, Team $109.95 per month, Business $189.95 per month. All 40+ connectors included. 30-day free trial. Cancel anytime.
30-day free trial. Cancel anytime.
Related on CorpusIQ
Skills, cross-tool patterns, and connector setup pages most relevant to operators on this surface.
Cross-tool patterns
Connector setup
Connector directory
