Weekly Metricool social post archive in Google Sheets

Every Monday at 6am, last week's posts from every brand land in one shared spreadsheet, so your team works off a single rolling history.

Deterministic Code
MetricoolGoogle SheetsMarketingOperationsData SyncDaily Digests
PromptCreate

Every Monday at 6am, export last week's social post performance from Metricool into a Google Sheet so my whole team works off one shared history. Build this as a code workflow on a cron trigger. Every step is fixed, so there should be no AI summarization anywhere in it: the point is a clean, append-only archive I can pivot and chart myself instead of re-exporting by hand.

Start by listing my brands with Metricool's Get Admin Simple Profiles. Metricool is brand-scoped, so use this to resolve the numeric blogId for each brand before pulling any stats, and carry the brand name through to the output rows.

Work out the date window once per run: the previous seven days, meaning the Monday to Sunday week that has just ended. Apply that same window to every brand and every network so the archive never overlaps itself or leaves a gap between runs.

For each brand, pull that window from all five sources: Get Stats Instagram Posts, Get Stats Instagram Reels, Get Stats Instagram Stories, Get Stats Facebook Posts and Get Stats Fbgroup Posts. Not every brand has every network connected. If a network returns no access or no data for a brand, skip it and carry on with the rest rather than failing the whole run.

Flatten every post from every network into one row with a fixed column order: brand name, network, publish date, post link, post type, impressions or reach, engagement, engagement rate. Use whichever of impressions or reach that network reports for that post type so the column is always populated, and where Metricool does not return an engagement rate directly, calculate it as engagement divided by impressions or reach.

Append the rows to my tracking spreadsheet with Google Sheets Append Values, one row per post, written after the last existing row. Never overwrite or rewrite rows that are already there. Each week's run just adds to the bottom, so the sheet builds into a rolling archive.

What does this prompt do?

  • Every Monday morning, collects last week's published posts for every brand in your Metricool account
  • Covers Instagram posts, reels and stories plus Facebook page and group posts, skipping any network a brand has not connected
  • Adds one row per post to your tracking spreadsheet with the brand, network, publish date, link, post type, reach, engagement and engagement rate
  • Only ever adds to the bottom of the sheet, so it builds into a rolling archive you can pivot and chart yourself

What do I need to use this?

  • A Metricool account on a plan that includes data export, currently Advanced or Custom
  • At least one brand in Metricool with Instagram or Facebook connected
  • A Google account with edit access to the spreadsheet you want to use
  • A spreadsheet with a header row for brand, network, publish date, post link, post type, impressions or reach, engagement and engagement rate

How can I customize it?

  • Change the timing: run it daily, monthly, or on a different day and hour instead of Monday at 6am
  • Choose which networks to include, for example Instagram only, or drop Facebook groups if you do not use them
  • Adjust the column layout to match a sheet you already keep, such as adding a campaign or owner column

FAQs

Do I need a paid Metricool plan for this?
Yes. Metricool includes the data export access this needs on its higher tier plans, currently Advanced and Custom. If you are on a lower plan you will need to upgrade before this can pull your numbers.
What if a brand only has Instagram connected?
That is fine. Each brand is checked network by network, and anything that is not connected is quietly skipped instead of stopping the run. You will simply get no Facebook rows for that brand.
Does this work with more than one brand?
Yes. It lists every brand in your Metricool account and pulls each one in turn, and every row carries its brand name so you can filter or pivot the sheet by brand.
Will it overwrite what is already in my spreadsheet?
No. Rows are only ever added below the last existing row. Nothing already in the sheet is edited or deleted, which is what turns it into a permanent archive over time.
Can I use this to build charts and reports?
That is the point. Because the data lands as plain rows with a consistent column order, you can build pivot tables, charts and dashboards on top of it without re-exporting anything by hand.

Related templates

Weekly Amazon S3 bucket security audit posted to Slack

Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.

Amazon S3
Slack Bot
Google Sheets
Agentic Task
Turn procurement portal tenders into CRM deals each morning

Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Draft polite follow-ups for emails that never got a reply

Every weekday at 4pm, spot the threads that went quiet, stage a ready-to-send nudge in your mailbox, and get a ranked Slack recap.

Aurinko
Google Sheets
Slack Bot
Agentic Task
Flag VIP client emails in Zoho Mail and alert your team

Keep a spreadsheet of your most important senders, and every email from one gets labeled, posted to your team channel, and logged automatically.

Zoho Mail
Google Sheets
Slack Bot
Deterministic Code
Send Yotpo review requests when Shopify orders ship

The moment an order is fulfilled, we register it with Yotpo so the review request is timed off real delivery, and we log every sync so failures never go unnoticed.

Shopify
Yotpo
Google Sheets
Deterministic Code
Reconcile Shopify sales against Zoho Books every night

Every night at 11pm we compare the day's Shopify orders with your Zoho Books invoices and payments, and flag only what does not match.

Zoho Books
Shopify
Google Sheets
+1
Agentic Task

Stop re-exporting your social numbers every week.

Let last week's post performance land in your team's spreadsheet before you sit down on Monday morning.