5D plan · Revenue · In build

LinkedIn and Facebook Analytics Import

Most teams publish to LinkedIn and Facebook every week and never see those numbers next to their web traffic and email. This plan brings them into the marketing dashboard in two stages: an upload that works for any account today, then the same numbers pulled automatically through each platform's API.

Stage 1: upload the export (building now) Stage 2: automatic pull (feedback wanted)
1

Definition of the Problem

The marketing dashboard shows website traffic, email delivery and opens, and the content calendar. It shows nothing from LinkedIn or Facebook, where most of the week's posts actually go. So nobody can answer the questions that matter: which posts earned reach, which earned clicks, and which pillars are worth writing more of.

Both platforms let a page admin download analytics, but the files land in a downloads folder and stop there. Two details make them awkward to use by hand:

2

Datasources Needed

SourceWhat it holdsHow to get it
LinkedIn Content export (.xls)A Metrics sheet with one row per day (impressions, unique impressions, clicks, reactions, comments, reposts, organic and sponsored) and an All posts sheet with one row per post.Company page admin view > Analytics > Content > Export, pick the date range.
Meta Business Suite post export (.csv)One row per post: post id, permalink, publish time, and the metric columns you tick (views, reach, reactions, comments, shares, clicks).Meta Business Suite > Insights > Content > Export data, choose post level and tick the metric columns.
The content calendarEach planned post's channel, publish date and copy.Already in the company OS (marketing_content).
Watch the Facebook export. If no metric columns are ticked, Meta still produces a file, but it holds only the post details and no numbers. The importer refuses that file and says how to export it again.

Two new tables hold the imported figures: one row per channel per day for page totals, and one row per platform post for post figures, each optionally linked to the calendar entry it matched. A re-import updates rows in place and never deletes.

3

Diagram and Documented Workflow

+

Doing it automatically instead

Uploading works for anyone, on any account, today, with no approvals. It still depends on someone remembering to export. Both platforms offer an API that returns the same numbers, so the second stage is a scheduled job that writes into the same two tables. The dashboard does not change; only the way the rows arrive does.

Facebook: Meta Graph API (do this first)

  • Setup: a Meta app owned by the same Business portfolio as the Page, and a system user in Business settings with the Page assigned to it. A system user token for your own business does not expire with a person's login.
  • Permissions: pages_show_list, pages_read_engagement and read_insights. For a Page your own business owns and an app used only by people with roles on it, App Review is usually not needed. Confirm this when you set it up.
  • Calls: list the Page's posts (/{page-id}/posts with id, message, created time and permalink), then read each post's insights (/{post-id}/insights) and the Page's daily insights (/{page-id}/insights).
  • Watch for: Meta has been renaming and retiring Page metrics (impressions are moving to "views"), so the metric names are read from the current Graph API version when the job is built, not copied from an old guide.

LinkedIn: Community Management API (apply now, build when approved)

  • Setup: a LinkedIn developer app, verified by your Company Page, with access to the Community Management API product. LinkedIn reviews that request, and it starts at a development tier before a standard one, so apply early.
  • Permissions: a Page admin signs in once and grants the organization scopes (r_organization_social and rw_organization_admin).
  • Calls: organizationalEntityShareStatistics returns per-post and day-by-day share figures (impressions, clicks, reactions, comments, shares), and organizationPageStatistics and follower counts fill in the page view.
  • Watch for: access tokens last about 60 days and the refresh token about a year, so a Page admin has to sign in again once a year. The job warns before that happens rather than going quiet.

Either platform: a connector service

Services such as Supermetrics, Windsor.ai or Metricool already hold approved access to both APIs and can deliver the numbers on a schedule. It is the quickest route when LinkedIn approval is slow, at the cost of a subscription and another vendor holding your page access.

Recommended order. Ship the upload now so the dashboard has numbers this month. Build the Facebook API job next, because it is your own Page and needs no outside approval. Apply for LinkedIn access on day one, and switch LinkedIn over when the approval lands. Keep the upload working throughout, for anyone whose account cannot connect.

Feedback wanted: if you have set up either API for a company page, or run one of the connector services, tell us what tripped you up. That is the part of this plan we most want to get right before we build it.

4

ROI Determined

5

Definition of Done

Done means

Deployment plan

  1. The importer. The two tables, the file reader for both exports, and the Import button with its preview and post matching on the Marketing page.
  2. The Social section. Impressions, clicks and engagement per channel, a daily line and the top posts on the Marketing page, and a social block in the monthly recap.
  3. Then the automatic pull, Facebook first and LinkedIn once approved, writing into the same tables.