How to Bulk Schedule Social Media Posts with Postiz: CSV Import Guide

Published September 25, 2026 · 8 min read · Open Source Social Media Scheduler

If you're still scheduling social media posts one at a time, you're leaving hours on the table every single week. Postiz — the open-source social media scheduling tool — lets you bulk schedule hundreds of posts across 30+ platforms using API-driven automation and a smart n8n workflow. Here's exactly how to set it up in 2026.

Why Bulk Scheduling Changes the Game

Most social media managers spend 30–45 minutes every day manually queuing posts. That's 3–5 hours a week spent on a task a machine could do in seconds. Bulk scheduling fixes this completely.

With a CSV import workflow powered by Postiz's API, you can:

Manual Scheduling

✗ Open each platform's composer

✗ Write/paste content per post

✗ Set time and publish — one at a time

✗ 30–60 minutes/day for 7 channels

✗ Burnout and missed posting windows

Postiz Bulk Scheduling

✓ Load a spreadsheet with all posts

✓ Run one n8n workflow

✓ API creates all posts in Postiz at once

✓ 15 minutes for a month's worth of content

✓ Consistent, error-free publishing calendar

What Is Postiz?

Postiz is a free, open-source social media scheduling tool built by GitRoom. It supports 30+ platforms including YouTube, TikTok, Instagram, Facebook, X/Twitter, LinkedIn, Reddit, Pinterest, Google Business, Discord, Mastodon, and Bluesky. Unlike Buffer ($15/channel/month) or Hootsuite ($99/month minimum), Postiz can be self-hosted on any VPS for roughly $6/month — with unlimited channels, unlimited users, and no per-post fees.

The tool has a clean dark-themed UI, team collaboration features, AI-assisted caption generation, a content calendar, and a full REST API that makes bulk automation possible. If you need to manage content for multiple clients or multiple personal brands, Postiz is the most cost-effective solution available in 2026.

The Postiz API: Your Bulk Scheduling Engine

Postiz exposes a REST API that lets you create, update, and schedule posts programmatically. The key endpoints for bulk scheduling are:

Postiz API Endpoints for Bulk Scheduling # Get your API key from Postiz Settings → API Keys POST https://api.postiz.com/api/post Authorization: Bearer YOUR_API_KEY # Request body for scheduling a single post { "content": "Your post caption or body text", "channels": ["youtube", "tiktok", "instagram"], "scheduledAt": "2026-10-15T09:00:00Z", "mediaUrls": ["https://your-cdn.com/image.jpg"] }

The API accepts posts in any language and supports platform-specific metadata. YouTube posts can include video URLs, TikTok supports short-form video links, and LinkedIn posts can include article URLs. This flexibility means a single spreadsheet row can describe a full multi-platform campaign.

Step-by-Step: Bulk Scheduling with Postiz and n8n

The most reliable way to achieve CSV-style bulk scheduling with Postiz is using n8n — a free, open-source workflow automation tool that reads a spreadsheet and loops through each row, calling the Postiz API for each entry.

Step 1: Prepare Your CSV Spreadsheet

Create a Google Sheet or Excel file with these columns:

Sample CSV — content_calendar.csv content,channels,scheduled_date,scheduled_time,media_url "Introducing our new product line — link in bio 🎉","youtube,tiktok,instagram","2026-10-01","09:00","https://cdn.example.com/launch-video.mp4" "Behind the scenes of our photoshoot 💡","facebook,x,linkedin","2026-10-03","12:00","https://cdn.example.com/bts.jpg" "5 tips for better productivity this week ⏰","x,tiktok,instagram","2026-10-05","07:30","" "Customer spotlight: how @janedoe uses our app","youtube,facebook","2026-10-07","14:00","https://cdn.example.com/testimonial.jpg"

Step 2: Export to Google Sheets or JSON

n8n has a native Google Sheets node that can read your spreadsheet directly. Alternatively, export as JSON using a tool like csvjson.com. The JSON format is easier for n8n to parse in bulk.

JSON format that n8n reads — posts.json [ { "content": "Introducing our new product line — link in bio 🎉", "channels": ["youtube", "tiktok", "instagram"], "scheduled_date": "2026-10-01", "scheduled_time": "09:00", "media_url": "https://cdn.example.com/launch-video.mp4" }, { "content": "5 tips for better productivity this week ⏰", "channels": ["x", "tiktok", "instagram"], "scheduled_date": "2026-10-05", "scheduled_time": "07:30", "media_url": "" } ]

Step 3: Set Up Your n8n Workflow

In n8n, create a new workflow with three nodes:

  1. HTTP Request node — Reads your JSON/CSV file from a URL
  2. Split In Batches node — Iterates over each row in the data
  3. HTTP Request node (Post) — Sends each row to the Postiz API
n8n Workflow JSON — postiz-bulk-schedule.json { "nodes": [ { "name": "Fetch Posts", "type": "httpRequest", "parameters": { "url": "https://your-storage.com/posts.json", "method": "GET" } }, { "name": "Split Posts", "type": "splitInBatches", "parameters": { "batchSize": 1 } }, { "name": "Schedule Post", "type": "httpRequest", "parameters": { "url": "https://api.postiz.com/api/post", "method": "POST", "body": { "content": "{{ $json.content }}", "channels": "{{ $json.channels }}", "scheduledAt": "{{ $json.scheduled_date }}T{{ $json.scheduled_time }}:00Z", "mediaUrls": ["{{ $json.media_url }}"] }, "headers": { "Authorization": "Bearer YOUR_POSTIZ_API_KEY" } } } ] }

The Split In Batches node processes one row at a time, which prevents rate-limiting issues and lets you monitor progress in real time. If one post fails, n8n logs the error and continues to the next — no lost work.

Step 4: Run the Workflow and Verify

After activating the workflow, n8n will iterate through every row in your CSV and create each post in Postiz at the scheduled time. Open your Postiz dashboard and check the calendar view — all your posts should appear as scheduled slots with the correct channel icons.

Key Takeaways

Platform-Specific Bulk Scheduling Tips

YouTube Bulk Scheduling

When scheduling YouTube content via Postiz, note that YouTube posts can be scheduled as community posts (text + image) or as video uploads. Postiz supports both. For video uploads, ensure your media_url points to a publicly accessible MP4 or MOV file hosted on your own CDN — YouTube Shorts and standard uploads work through the official YouTube API connection in Postiz.

TikTok and Instagram Bulk Scheduling

TikTok and Instagram require OAuth app registration through Postiz. Once your accounts are connected, the channels in your CSV channel list (tiktok, instagram) automatically map to the correct OAuth credentials. You can schedule up to 60 days in advance for Instagram and 30 days for TikTok.

Multi-Account Bulk Scheduling

For agencies managing multiple client accounts, create a separate n8n workflow per client — each with its own Postiz API key and channel configuration. This keeps client content strictly isolated while using a single n8n instance to manage all workflows. You can schedule 1,000+ posts a week across 50+ client accounts without touching a single manual composer.

Common CSV Bulk Scheduling Mistakes to Avoid

Ready to Bulk Schedule Your Social Media?

Postiz is free, open-source, and self-hostable. Set it up on any VPS in under 10 minutes with Docker, then connect your channels and start scheduling. Get a free Postiz trial →

How Postiz Compares to Paid Tools for Bulk Scheduling

Buffer, Later, and Hootsuite all offer native bulk scheduling — but only on paid plans. Here's the honest comparison:

For creators managing 3 or more channels, Postiz pays for its VPS in the first month compared to a single Buffer subscription. For agencies or brands managing 10+ channels, the math is even more dramatic — Postiz self-hosted is effectively free at scale.

Frequently Asked Questions

Does Postiz support bulk scheduling via CSV?

Postiz supports bulk scheduling through its API and integrations with automation tools like n8n. While there is no native CSV import button in the UI, you can use the Postiz API to create hundreds of scheduled posts in a batch workflow, effectively achieving the same result as CSV import. The n8n workflow described above is the most reliable approach.

How do I schedule posts to multiple platforms at once with Postiz?

In Postiz, create a new post and click the checkboxes for all the social channels where you want it published simultaneously — YouTube, TikTok, Instagram, Facebook, X, LinkedIn and others. The same content goes out to every selected platform with platform-specific formatting applied automatically by Postiz's built-in adapters.

What platforms does Postiz support for bulk posting?

Postiz supports 30+ platforms including YouTube, TikTok, Instagram, Facebook, X/Twitter, LinkedIn, Reddit, Pinterest, Google Business, Discord, Mastodon, Bluesky, and more. The full platform list is maintained on the official Postiz GitHub repository.

Can I automate Postiz bulk posting with n8n?

Yes. Postiz has a full REST API that n8n can call in a loop. Create an n8n workflow that reads a spreadsheet, iterates over each row, and calls the Postiz API to schedule each post at its designated time. This replicates CSV-import-style bulk scheduling with full error handling and retry logic built in.

Is Postiz free to self-host for bulk scheduling?

Yes. The self-hosted version of Postiz is completely free and unlimited. Unlike SaaS tools that charge per channel or per seat, a self-hosted Postiz instance on a $6/month VPS can handle unlimited channels, unlimited users, and unlimited scheduled posts with no ongoing cost beyond the server rental.