Multi client social media reporting cockpit for agencies

Pick a client and a date range and see every social profile's numbers on one screen, with period over period deltas saved automatically.

App
AgorapulseGoogle SheetsSlack BotMarketingOperationsAI ReportsResearch & Monitoring
PromptCreate

I run social media for several clients and I lose hours every reporting cycle logging into each workspace, screenshotting dashboards and copying numbers into spreadsheets. Build me an internal cockpit I can open mid month to answer "how is this client doing right now" for any date range I choose. The people using it are account managers at a social media agency, each responsible for a handful of clients.

The landing view is a client picker. Build it from Agorapulse Get Manager Organizations to find the organizations my API key can see, then Get Organization Workspaces for each organization, then Get Workspace Profiles for each workspace. Treat a workspace as a client. Use List Workspace Menu Groups to read the profile folders a workspace has defined, and group profiles on screen the same way they are grouped in Agorapulse. Show each client as a card with its name, the number of connected profiles and the networks those profiles cover, and let me search or filter the list when I have many clients.

Clicking a client opens the client page, which has a date range picker at the top. Default the range to the last full calendar month, and offer quick presets for last 7 days, last 30 days, last full quarter and a custom range. Every Agorapulse report call requires explicit since and until values as plain dates, so always resolve the picker to a concrete date pair before fetching.

The main tab combines Get Content Report, Get Audience Report and Get Community Management Report for the chosen dates, one call per profile. Show a summary strip across the top with the client's headline numbers rolled up across profiles, then a per profile breakdown covering content performance, audience growth and community management activity. Be honest in the roll up about which profiles contributed, because not every network returns every metric.

Agorapulse reports only ever return the window you ask for and there is no history endpoint, so the app has to keep its own history. Every time a report is pulled, save the result into the app's own storage as a dated snapshot keyed by profile, report type and the since and until window, along with the timestamp of the pull. Use those stored snapshots to render month over month and quarter over quarter deltas instantly instead of refetching, and to preserve reporting history even after a profile is disconnected from a workspace or a client leaves. If a requested window is already in storage, serve it from storage and give me an explicit refresh control rather than silently refetching.

A second tab covers competitors, built from Get Competitors and Get Competitor Report. These endpoints work only for Facebook Pages and Instagram business accounts, so only surface this tab for profiles of those types and say so clearly when a client has none. Competitor data in Agorapulse synchronizes once a day, so label the tab with the as of date of the underlying data rather than implying it is live.

From the client page I want an export button that pushes the current view into a Google Sheet, using Create Spreadsheet to make a spreadsheet named for the client and the date range and then Append Values to write the rows. Include the per profile numbers and the period over period deltas, because that sheet becomes the basis of the client deck.

I also want a share button that posts the headline numbers to a channel using the Slack Bot Send a Message action. Let me pick the channel and preview the message before it sends, and format it as a short readable summary naming the client and the date range rather than a dump of every metric.

Be careful with fan out. Agorapulse allows 500 requests per 30 minutes, and a client with many profiles multiplies quickly because each profile needs three separate report calls. Fetch profile reports with limited concurrency, show progress while a client page loads, reuse stored snapshots wherever possible, and handle a rate limited response by backing off and telling me what happened instead of failing silently. The report, organization, workspace and profile endpoints are not paginated, so a single call returns the full set for each.

What does this prompt do?

  • One screen per client showing every connected social profile's content, audience and community numbers for whatever date range you choose.
  • Saves every pull as a dated snapshot, so month over month and quarter over quarter comparisons appear instantly and your history survives even after a profile is disconnected.
  • A competitor tab benchmarks your Facebook Pages and Instagram business profiles against the competitors you track, labelled with the date that data was last refreshed.
  • Export the current view to a Google Sheet for the client deck, or post the headline numbers straight to a Slack channel.

What do I need to use this?

  • An Agorapulse account on a plan that includes API access, with each client set up as its own workspace
  • A Google account, if you want to export a view into a spreadsheet
  • A Slack workspace, if you want to post headline numbers to a channel

How can I customize it?

  • Change the default date range. It opens on the last full calendar month, but you can make it last 7 days, last quarter, or whatever your clients expect.
  • Choose which metrics appear on the summary cards and in the export, so each client deck leads with the numbers that client cares about.
  • Decide where the headline numbers post in Slack, whether that is one shared channel for the team or a separate channel per client.

FAQs

Can I compare one client against another?
Yes. The client picker lists every workspace you have access to, so you can jump between clients without logging in and out, and each client page shows the same metrics laid out the same way so the comparison is direct.
Why does the competitor tab show an older date than the rest of the page?
Competitor data refreshes once a day rather than in real time, so the tab is labelled with the date the data is accurate as of. Everything else on the client page reflects the exact date range you picked.
What happens to my reporting history if a client disconnects a profile?
Nothing is lost. Every pull is saved as a dated snapshot in the app's own storage, so past months stay available for comparison even after a profile is disconnected or a client leaves.
Do I need a paid Agorapulse plan?
You need a plan that includes API access. If you do not see an API Keys section in your personal settings, your current plan does not include it and your Agorapulse account manager can enable it.
Can I report on a custom period like a campaign flight?
Yes. Alongside the presets you can set any start and end date, so campaign flights, launch weeks and client specific reporting cycles all work.

Related templates

Prospecting desk that builds account lists from the live web

Stop buying stale lists. Reps run a saved search, work the results like an inbox, and only the accounts they approve ever reach your CRM.

Hyperbrowser
HubSpot
Google Sheets
App
Share of voice dashboard for your brand and competitors

See how your brand's news coverage and sentiment stack up against four competitors, then let an assistant write the weekly report for you.

GDELT
Notion
Slack Bot
App
Approval war room for every social post awaiting sign-off

One screen showing every social post waiting on approval, sorted by deadline, so reviewers can approve or reject without leaving the page.

Hootsuite
Slack Bot
App
Turn champion job changes into new pipeline in Attio

Every Monday, find the past champions and closed-won contacts who changed jobs, update Attio, and get the moves worth chasing in Slack.

Boomerang
Attio
Slack Bot
Agentic Task
Collect social post requests and schedule them in Hootsuite

Staff submit what happened, your social manager edits the copy, picks the accounts and puts it on the calendar without a single spreadsheet.

Hootsuite
Slack Bot
General Input Database
App
Influencer campaign roster board with AI creator briefs

Drag creators through Sourced to Wrapped on a board grouped by campaign, with audience stats on every card and a one-click brief for each creator.

HypeAuditor
Google Sheets
Notion
App

Stop screenshotting dashboards every reporting cycle.

Open one cockpit, pick a client and a date range, and have the numbers, the deltas and the export ready in a couple of clicks.