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.
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?
What if a brand only has Instagram connected?
Does this work with more than one brand?
Will it overwrite what is already in my spreadsheet?
Can I use this to build charts and reports?
Related templates
Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.
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.
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.
Keep a spreadsheet of your most important senders, and every email from one gets labeled, posted to your team channel, and logged automatically.
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.
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.
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.