Can N8N used for setting up to extract Facebook posts from FB page to an excel sheet?

How to extract FB posts from a FB page and pas them to a Google sheet / Excel ?

Describe the problem/error/question

What is the error message (if any)?

Please share your workflow

(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)

Share the output returned by the last node

Information on your n8n setup

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

Welcome tot the community @ChrisN8N8

check this out:

1 Like

Sure it’s possible, you can do this with:

  • Facebook Page scraper by Apify with the Apify node
  • Edit fields node to turn it into the format you want
  • Google Sheets node to push the new rows into the Sheet you’re looking for.

Hey, are you looking to pull posts from a page you own/manage or someone else’s public page? Thatll change teh approach since Facebook’s API is pretty restrictive about what you can access these days

Building on what @Benjamin_Behrens said - the Graph API approach is the way to go (free, no third-party dependency).

One thing to watch out for when using FB Graph API in n8n: the Page Access Token expires after 60 days (long-lived) or 1-2 hours (short-lived). In production this always catches people off guard.

The flow that works well:

  1. HTTP Request node → GET /{page-id}/posts?fields=message,created_time,likes.summary(true),comments.summary(true)&access_token={token}
  2. Loop through results (SplitInBatches)
  3. Google Sheets node → append rows

For the token issue, you can build a small n8n workflow that auto-refreshes your long-lived token before it expires and stores it in an environment variable or Google Sheets. I’ve dealt with this a lot building FB Messenger bots - the token management is honestly the hardest part, not the API call itself.

If you’re just doing a one-time export, a short-lived token from the Graph API Explorer works fine. For recurring scheduled exports, you’ll need a long-lived token strategy.