For the complete documentation index, see llms.txt. This page is also available as Markdown.

Manage Multiple Accounts from One Automation

You run social media for three brands. Or five clients. Or one brand with separate accounts for different regions. Each account needs its own content, its own schedule, and its own platform connections. You try to build this in n8n or Make.com, and your workflow turns into a maze of IF nodes, separate credentials, and duplicated logic.

This is a recurring pain point on the n8n forum and Make.com forum. Social media managers and agencies ask: "How do I post to multiple Instagram accounts from one scenario?" or "What is the best n8n automation guideline for multi-account content automation?" The answers involve workarounds that do not scale.

Here is how to manage any number of accounts from a single workflow.

Why multi-account automation is hard with native nodes

The core problem: each native social media node in n8n or Make.com is tied to one OAuth credential. If you manage 5 Instagram accounts, you need 5 separate Facebook Graph API credentials, 5 separate nodes, and 5 separate branches in your workflow.

Common issues from forum discussions:

  • Credential management. Each account needs its own OAuth connection. Adding a new client means reconfiguring the workflow, not adding a row to a spreadsheet.

  • Workflow duplication. Users copy entire workflows per client, then struggle to keep them in sync when they change the logic.

  • Token expiration. OAuth tokens expire at different times. One expired token breaks one client's posts while others continue. Debugging means checking each credential individually.

  • Make.com operation limits. Each branch per account consumes operations. A 5-account, 3-platform workflow uses 15+ operations per post, which adds up fast on paid plans.

  • n8n self-hosted complexity. Users running n8n on a VPS report memory issues when running 10+ concurrent branches with media uploads.

On the n8n forum, a user managing content for multiple accounts wrote: "I need a guideline for multi-account content automation. I want to manage accounts in a spreadsheet and have the workflow pick the right credentials." The thread has no clear solution using native nodes alone.

The account-driven approach

With Blotato, all your social accounts are connected in one place. The API returns a list of all connected accounts with their accountId values. Your workflow reads from a spreadsheet, matches each row to an accountId, and publishes. No per-account OAuth. No branching. No duplicated workflows.

Step 1: Get all connected accounts

Call GET /v2/users/me/accounts to list every connected account:

Filter by platform if needed: GET /v2/users/me/accounts?platform=instagram

See: List Connected Accounts

Step 2: Structure your content spreadsheet

Set up a Google Sheet (or Airtable, or Notion database) with one row per post:

Brand
Platform
Account ID
Text
Media URL
Scheduled Time
Status

Brand A

instagram

101

New product launch...

https://example.com/img1.jpg

2026-04-08T09:00:00+00:00

Ready

Brand A

linkedin

103

We are launching...

https://example.com/img1.jpg

2026-04-08T10:00:00+00:00

Ready

Brand B

instagram

102

Summer collection...

https://example.com/img2.jpg

2026-04-08T11:00:00+00:00

Ready

The accountId column is the link between your spreadsheet and Blotato. Each row maps to one publish call.

Step 3: Publish each row

Loop through the spreadsheet rows and call the Publish Post endpoint for each:

The same workflow handles Brand A's Instagram, Brand A's LinkedIn, and Brand B's Instagram. No branching. No separate credentials. The accountId routes each post to the right account.

Step-by-step: n8n workflow

  1. Install the Blotato community node in n8n.

  2. Add a Google Sheets Trigger (or Schedule Trigger + Google Sheets node) to read rows where Status = "Ready".

  3. Add a Loop Over Items node (or let n8n auto-loop) to process each row.

  4. Add a Blotato Publish Post node inside the loop. Map the accountId, text, mediaUrls, platform, and scheduledTime fields from the spreadsheet columns.

  5. Add a Google Sheets Update node to set the Status column to "Posted" after each publish.

  6. Activate the workflow.

Adding a new brand means connecting the account in Blotato and adding rows to the spreadsheet. No workflow changes needed.

Step-by-step: Make.com scenario

  1. Add a Google Sheets - Watch Rows trigger module filtered to rows where Status = "Ready".

  2. Add an Iterator module to process each row.

  3. Add an HTTP module calling POST https://backend.blotato.com/v2/posts with the blotato-api-key header.

  4. Map the request body fields from the spreadsheet columns: accountId, text, mediaUrls, platform, targetType, and scheduledTime.

  5. Add a Google Sheets - Update Row module to mark the row as "Posted".

  6. Activate the scenario.

One scenario handles all brands and all platforms. No Router needed. No per-account branches.

Scaling to 10+ accounts

When managing many accounts, keep these patterns in mind:

Content templates per brand. Store brand-specific instructions (tone, hashtags, emoji style) in a separate sheet tab or database table. Join them to each post row before publishing.

Bulk scheduling with useNextFreeSlot. Instead of manually setting scheduledTime per post, use useNextFreeSlot: true to let Blotato pick the next open slot for each account's calendar:

Each account has its own calendar slots, so Brand A's Instagram posts land on Brand A's schedule, and Brand B's posts land on Brand B's schedule.

AI-generated content per brand. Use the Create Source endpoint to generate brand-specific content. Pass brand guidelines in customInstructions:

Run this for each brand with different instructions to get on-brand content from the same source material.

Status tracking. After each publish, the API returns a postSubmissionId. Poll GET /v2/posts/{postSubmissionId} to check whether the post is published or failed. Log the status back to your spreadsheet for a full audit trail across all brands.

Comparing approaches

Native nodes (per-account OAuth)
Blotato API (account-driven)

Adding a new account

Reconfigure workflow, add new credential

Add rows to spreadsheet

OAuth management

One token per account, per platform

One API key for all accounts

Workflow complexity

Branches multiply with each account

Single loop, no branching

Token expiration

Each token expires independently

Blotato manages tokens

Make.com operations

1 operation per node per account

1 HTTP call per post

Forum threads referenced

These are the community discussions that prompted this post:

Last updated