
If, like me, you love a bit of content batching — I bet you have a spreadsheet for that. 👀
What if I told you *waggles eyebrows* that you don't have to manually copy-paste every single post into your social media scheduling tool?
Bulk Upload does that in one go.
You build a CSV, upload it to a channel, and the posts land in your queue or your drafts. It's available on every Buffer plan, including Free.
Below are instructions for creating the spreadsheet, uploading it, and a bit of troubleshooting advice (just in case).
Bye-bye, busywork!
Jump to a section:
Key takeaways
- Bulk Upload is available on every Buffer plan, including Free.
- Free plan: up to 10 posts per channel per upload, limited further by the slots left in your queue. Paid plans: up to 100 posts per channel per upload.
- Go over your plan's limit and Buffer schedules posts up to the limit, then skips the rest — without showing an error.
- Bulk Upload only handles text and single-image posts right now.
- The Posting Time column must be YYYY-MM-DD HH:mm in 24-hour time, zero-padded. Excel often automatically reformats this column, so if you're running into issues, it's probably this!
- Every image needs a public, direct URL that ends with a file extension. Google Drive and Dropbox share links have to be converted first.
What Buffer's Bulk Upload does
Bulk Upload lets you add a batch of posts to a Buffer channel at once by uploading a CSV file. Each row in the file becomes one post. You can set the text, an image, tags, and a posting time per row, then send the whole batch to your queue or save it as drafts.
It's available on every Buffer plan, including Free. You'll find the option within the channel settings.
Bulk Upload works per channel, rather than per account. So you'll upload one CSV to one channel at a time. Right now, the Bulk Upload feature supports text and single images only (but watch this space for updates on that front!) 👀
How many posts you can upload on each plan
| Plan | Posts per channel, per upload |
|---|---|
| Free | Up to 10, limited by the slots remaining in your queue |
| All paid plans | Up to 100 |
Buffer's Free plan supports up to 10 scheduled posts per channel, so that will come into play here, too. For example, if your Facebook Page already has three posts scheduled, you can upload seven more.
How to bulk upload posts in Buffer
Step 1. Download the CSV template
We've prepped the spreadsheet (CSV) for you for each channel, and you'll find it right inside Buffer.
To get our CSV template:
- Click the Publish tab in the left sidebar.
- Select the channel you want to upload posts to.
- Click the gear icon (⚙️) next to the channel name.
- Click the General tab.
- Click Bulk Upload.
- Click Download Template.

Be sure to grab a fresh spreadsheet for each channel and every new Bulk Upload, because templates differ by channel. Pinterest, for example, needs a Board Name column that Instagram's template doesn't have. Upload a file missing a column that the channel requires, and the posts won't go through.
Step 2. Fill in your posts
Add your content to the spreadsheet. One row = one post.
Here's what each column in the spreadsheet does:
| Column | Required? | What goes in it |
|---|---|---|
| Text | Yes, unless you have an image URL | Your post text or caption |
| Image URL | Required for Instagram, optional elsewhere | A direct link to your image, ending in .jpg, .png, etc. |
| Tags | Optional | Existing Buffer tags, separated by commas |
| Posting Time | Optional | YYYY-MM-DD HH:mm in 24-hour time. Leave blank to use your next available queue slot |
| Board Name | Pinterest only | The name of one of your existing boards |
Some helpful tips to remember when you add your posts to the spreadsheet:
- Column titles are case-sensitive and must match the template exactly. (So don't make any changes there.)
- Every post needs text, an image URL, or both. Instagram posts need an image URL. Pinterest posts need a board name.
- No blank rows between posts. An empty row can stop the upload from completing.
- Save as CSV UTF-8 if you're using emojis in your posts. Excel and Google Sheets both produce reliable files; Apple Numbers and some third-party CSV tools can add invisible characters or change your column headers.
Here are a few more how-tos:
How to add line breaks to your post text
To get paragraph breaks inside a post, add the line break in the Text cell itself: Ctrl + Enter on Windows, Cmd + Enter on Mac. Edit inside the cell, not the formula bar.
How to bulk upload images
Every image needs a direct URL: a link that ends in a file extension and opens the image on its own, not inside a web page. It also has to be visible to anyone with the link.
A normal Google Drive or Dropbox share link won't work until you convert it:
- Google Drive: set access to Anyone with the link, then take the file ID from the URL (the long string between
/d/and/view) and rebuild it ashttps://drive.google.com/uc?export=view&id=FILE_ID - Dropbox: confirm Anyone with the link can view, then change the end of the URL from
dl=0toraw=1 - Imgur: links are public by default, so just right-click the image, open it in a new tab, and use that URL
Keep images under 5MB — larger files may fail to load.
Alternatively, you can skip adding image URLs in the CSV and simply upload your posts as drafts. From there, you’ll be able to upload the right images to each post directly in Buffer before scheduling.
How to use the Tags column
'Tags' here means Buffer tags — the labels you use to organize and report on posts — not hashtags. They're case-sensitive, and they have to already exist in your account. If a tag in your CSV doesn't exist, Buffer imports the post and drops the tag. The tag just won't appear.
Hashtags go in the Text column with the rest of your caption.
Step 3. Upload, review, and confirm
With all your posts properly added to the template spreadsheet, you're almost there! Next:
- From the Publish tab, select your channel.
- Click the gear icon (⚙️) next to the channel name.
- Click the General tab, then Bulk Upload.
- Click Upload File and choose your CSV.
Buffer reads the file and shows you a preview on the Review Content screen. That preview is your confirmation that the file was parsed — if you don't see it, the upload didn't go through.
Note that seeing the preview doesn't mean your post is already scheduled. You must click either Add Posts to Queue or Save as Drafts. Close the dialog before choosing one, and nothing is added.
Drafts are the safer option if you want to add media or first comments before anything goes out.
If individual rows have problems, you'll see the error underneath each one. After the good posts are scheduled, you can click Download CSV with post errors to get just the broken rows back, fix them, and re-upload — much better than hunting through 80 lines to find the three that failed.
4 ways creators, brands, and agencies use Bulk Upload
Break one long piece into a month of posts. Turn a blog post, video script, or podcast episode into multiple bite-sized updates, upload them in one go, and fill your queue for weeks. Writing them in a sheet is faster than writing them in a composer, and turning one long piece into a month of posts is where Bulk Upload is an absolute winner for me.
Set up seasonal and recurring content in one sitting. Holiday promos, “Tip Tuesday,” monthly newsletters — prep them once, upload, and Buffer will handle the rest.
Load a full month per client. If you're running several accounts, one CSV per client channel is a very different afternoon from clicking through the composer 60 times. Pair it with the team features built for agencies for approvals.
Move a calendar over from another tool. Export scheduled content from an old platform into CSV, tweak as needed, and import directly into Buffer without rebuilding everything post by post. We'll dig into this a little more below!
Moving your content calendar over from another tool
If you're switching schedulers, you probably already have a CSV — most tools will export your scheduled content. Getting it into Buffer is mostly a reshaping job.
- Export your scheduled posts from your current tool.
- Download Buffer's template for the channel you're moving, and copy your content into it. Your caption column becomes Text; your date column becomes Posting Time, reformatted to
YYYY-MM-DD HH:mm. - Sort out your images. Exported files usually reference images stored inside the old tool. Those URLs won't work, so re-upload the images somewhere public and use direct links.
- Leave the unsupported stuff behind. Videos, carousels, and first comments won't transfer — flag those rows and rebuild them in the composer. I recommend uploading the text as a draft as part of the bulk upload, and just adding the final elements in review.
- Upload in batches that fit your plan's limit.
If you want to reformat the spreadsheet you're using, rather than use Buffer's template, that's an option too. I definitely recommend you download Buffer's version anyway to cross-check the two, and make sure every column is correctly named and uses the right format.
Frequently asked questions
Can you bulk upload posts to Buffer on the Free plan?
Yes. Bulk Upload is available on every Buffer plan, including Free. On Free, you can add up to 10 posts per channel per upload, limited further by how many slots are left in your queue.
How many posts can you bulk upload at once?
Up to 10 per channel per upload on the Free plan, and up to 100 per channel per upload on paid plans. The limit is per channel, per upload, so you can run several uploads in a row.
Can you bulk upload videos or reels?
No. Bulk Upload supports text and single-image posts only. Video posts, including reels, have to be created in the composer.
Why did only some of my posts upload?
You most likely went over your plan's per-upload limit. Buffer schedules posts up to the limit and skips the rest without showing an error. Split the file into smaller batches, or check your plan's limit.
Does bulk upload work for Instagram?
Yes, but every row needs an image URL — Instagram posts can't be text-only. Uploads create standard Instagram posts; you can't mark a row as a reel or a story, though you can upload an image post and switch it to a story in your queue before it publishes.
Can you bulk upload to Pinterest?
Yes, using Buffer's Pinterest template. It needs the name of an existing board, takes each Pin's description from the Text column, and includes optional Title, Alt Text, and Link fields.
Why isn't my image showing up?
Usually, the link isn't a direct image URL. Check that it ends in a file extension, that sharing is set to public or anyone with the link, that the file is under 5MB, and that opening it in a new tab shows the image on its own rather than inside a web page.
Let us know if you're stuck!
Bulk Upload is faster, simpler, and designed to fit the way you already work. Whether you’re managing a handful of posts or a hundred, it'll save you time and help you stay consistent.
If something won't upload, the step-by-step troubleshooting guide goes deeper than this article does, and our team will happily look at your CSV if you're stuck.
Skip the busywork and try Bulk Upload in your Buffer dashboard today →
from Buffer Resources https://ift.tt/Uu2gZ1r

If, like me, you love a bit of content batching — I bet you have a spreadsheet for that. 👀
What if I told you *waggles eyebrows* that you don't have to manually copy-paste every single post into your social media scheduling tool?
Bulk Upload does that in one go.
You build a CSV, upload it to a channel, and the posts land in your queue or your drafts. It's available on every Buffer plan, including Free.
Below are instructions for creating the spreadsheet, uploading it, and a bit of troubleshooting advice (just in case).
Bye-bye, busywork!
Jump to a section:
Key takeaways
- Bulk Upload is available on every Buffer plan, including Free.
- Free plan: up to 10 posts per channel per upload, limited further by the slots left in your queue. Paid plans: up to 100 posts per channel per upload.
- Go over your plan's limit and Buffer schedules posts up to the limit, then skips the rest — without showing an error.
- Bulk Upload only handles text and single-image posts right now.
- The Posting Time column must be YYYY-MM-DD HH:mm in 24-hour time, zero-padded. Excel often automatically reformats this column, so if you're running into issues, it's probably this!
- Every image needs a public, direct URL that ends with a file extension. Google Drive and Dropbox share links have to be converted first.
What Buffer's Bulk Upload does
Bulk Upload lets you add a batch of posts to a Buffer channel at once by uploading a CSV file. Each row in the file becomes one post. You can set the text, an image, tags, and a posting time per row, then send the whole batch to your queue or save it as drafts.
It's available on every Buffer plan, including Free. You'll find the option within the channel settings.
Bulk Upload works per channel, rather than per account. So you'll upload one CSV to one channel at a time. Right now, the Bulk Upload feature supports text and single images only (but watch this space for updates on that front!) 👀
How many posts you can upload on each plan
| Plan | Posts per channel, per upload |
|---|---|
| Free | Up to 10, limited by the slots remaining in your queue |
| All paid plans | Up to 100 |
Buffer's Free plan supports up to 10 scheduled posts per channel, so that will come into play here, too. For example, if your Facebook Page already has three posts scheduled, you can upload seven more.
How to bulk upload posts in Buffer
Step 1. Download the CSV template
We've prepped the spreadsheet (CSV) for you for each channel, and you'll find it right inside Buffer.
To get our CSV template:
- Click the Publish tab in the left sidebar.
- Select the channel you want to upload posts to.
- Click the gear icon (⚙️) next to the channel name.
- Click the General tab.
- Click Bulk Upload.
- Click Download Template.

Be sure to grab a fresh spreadsheet for each channel and every new Bulk Upload, because templates differ by channel. Pinterest, for example, needs a Board Name column that Instagram's template doesn't have. Upload a file missing a column that the channel requires, and the posts won't go through.
Step 2. Fill in your posts
Add your content to the spreadsheet. One row = one post.
Here's what each column in the spreadsheet does:
| Column | Required? | What goes in it |
|---|---|---|
| Text | Yes, unless you have an image URL | Your post text or caption |
| Image URL | Required for Instagram, optional elsewhere | A direct link to your image, ending in .jpg, .png, etc. |
| Tags | Optional | Existing Buffer tags, separated by commas |
| Posting Time | Optional | YYYY-MM-DD HH:mm in 24-hour time. Leave blank to use your next available queue slot |
| Board Name | Pinterest only | The name of one of your existing boards |
Some helpful tips to remember when you add your posts to the spreadsheet:
- Column titles are case-sensitive and must match the template exactly. (So don't make any changes there.)
- Every post needs text, an image URL, or both. Instagram posts need an image URL. Pinterest posts need a board name.
- No blank rows between posts. An empty row can stop the upload from completing.
- Save as CSV UTF-8 if you're using emojis in your posts. Excel and Google Sheets both produce reliable files; Apple Numbers and some third-party CSV tools can add invisible characters or change your column headers.
Here are a few more how-tos:
How to add line breaks to your post text
To get paragraph breaks inside a post, add the line break in the Text cell itself: Ctrl + Enter on Windows, Cmd + Enter on Mac. Edit inside the cell, not the formula bar.
How to bulk upload images
Every image needs a direct URL: a link that ends in a file extension and opens the image on its own, not inside a web page. It also has to be visible to anyone with the link.
A normal Google Drive or Dropbox share link won't work until you convert it:
- Google Drive: set access to Anyone with the link, then take the file ID from the URL (the long string between
/d/and/view) and rebuild it ashttps://drive.google.com/uc?export=view&id=FILE_ID - Dropbox: confirm Anyone with the link can view, then change the end of the URL from
dl=0toraw=1 - Imgur: links are public by default, so just right-click the image, open it in a new tab, and use that URL
Keep images under 5MB — larger files may fail to load.
Alternatively, you can skip adding image URLs in the CSV and simply upload your posts as drafts. From there, you’ll be able to upload the right images to each post directly in Buffer before scheduling.
How to use the Tags column
'Tags' here means Buffer tags — the labels you use to organize and report on posts — not hashtags. They're case-sensitive, and they have to already exist in your account. If a tag in your CSV doesn't exist, Buffer imports the post and drops the tag. The tag just won't appear.
Hashtags go in the Text column with the rest of your caption.
Step 3. Upload, review, and confirm
With all your posts properly added to the template spreadsheet, you're almost there! Next:
- From the Publish tab, select your channel.
- Click the gear icon (⚙️) next to the channel name.
- Click the General tab, then Bulk Upload.
- Click Upload File and choose your CSV.
Buffer reads the file and shows you a preview on the Review Content screen. That preview is your confirmation that the file was parsed — if you don't see it, the upload didn't go through.
Note that seeing the preview doesn't mean your post is already scheduled. You must click either Add Posts to Queue or Save as Drafts. Close the dialog before choosing one, and nothing is added.
Drafts are the safer option if you want to add media or first comments before anything goes out.
If individual rows have problems, you'll see the error underneath each one. After the good posts are scheduled, you can click Download CSV with post errors to get just the broken rows back, fix them, and re-upload — much better than hunting through 80 lines to find the three that failed.
4 ways creators, brands, and agencies use Bulk Upload
Break one long piece into a month of posts. Turn a blog post, video script, or podcast episode into multiple bite-sized updates, upload them in one go, and fill your queue for weeks. Writing them in a sheet is faster than writing them in a composer, and turning one long piece into a month of posts is where Bulk Upload is an absolute winner for me.
Set up seasonal and recurring content in one sitting. Holiday promos, “Tip Tuesday,” monthly newsletters — prep them once, upload, and Buffer will handle the rest.
Load a full month per client. If you're running several accounts, one CSV per client channel is a very different afternoon from clicking through the composer 60 times. Pair it with the team features built for agencies for approvals.
Move a calendar over from another tool. Export scheduled content from an old platform into CSV, tweak as needed, and import directly into Buffer without rebuilding everything post by post. We'll dig into this a little more below!
Moving your content calendar over from another tool
If you're switching schedulers, you probably already have a CSV — most tools will export your scheduled content. Getting it into Buffer is mostly a reshaping job.
- Export your scheduled posts from your current tool.
- Download Buffer's template for the channel you're moving, and copy your content into it. Your caption column becomes Text; your date column becomes Posting Time, reformatted to
YYYY-MM-DD HH:mm. - Sort out your images. Exported files usually reference images stored inside the old tool. Those URLs won't work, so re-upload the images somewhere public and use direct links.
- Leave the unsupported stuff behind. Videos, carousels, and first comments won't transfer — flag those rows and rebuild them in the composer. I recommend uploading the text as a draft as part of the bulk upload, and just adding the final elements in review.
- Upload in batches that fit your plan's limit.
If you want to reformat the spreadsheet you're using, rather than use Buffer's template, that's an option too. I definitely recommend you download Buffer's version anyway to cross-check the two, and make sure every column is correctly named and uses the right format.
Frequently asked questions
Can you bulk upload posts to Buffer on the Free plan?
Yes. Bulk Upload is available on every Buffer plan, including Free. On Free, you can add up to 10 posts per channel per upload, limited further by how many slots are left in your queue.
How many posts can you bulk upload at once?
Up to 10 per channel per upload on the Free plan, and up to 100 per channel per upload on paid plans. The limit is per channel, per upload, so you can run several uploads in a row.
Can you bulk upload videos or reels?
No. Bulk Upload supports text and single-image posts only. Video posts, including reels, have to be created in the composer.
Why did only some of my posts upload?
You most likely went over your plan's per-upload limit. Buffer schedules posts up to the limit and skips the rest without showing an error. Split the file into smaller batches, or check your plan's limit.
Does bulk upload work for Instagram?
Yes, but every row needs an image URL — Instagram posts can't be text-only. Uploads create standard Instagram posts; you can't mark a row as a reel or a story, though you can upload an image post and switch it to a story in your queue before it publishes.
Can you bulk upload to Pinterest?
Yes, using Buffer's Pinterest template. It needs the name of an existing board, takes each Pin's description from the Text column, and includes optional Title, Alt Text, and Link fields.
Why isn't my image showing up?
Usually, the link isn't a direct image URL. Check that it ends in a file extension, that sharing is set to public or anyone with the link, that the file is under 5MB, and that opening it in a new tab shows the image on its own rather than inside a web page.
Let us know if you're stuck!
Bulk Upload is faster, simpler, and designed to fit the way you already work. Whether you’re managing a handful of posts or a hundred, it'll save you time and help you stay consistent.
If something won't upload, the step-by-step troubleshooting guide goes deeper than this article does, and our team will happily look at your CSV if you're stuck.
Skip the busywork and try Bulk Upload in your Buffer dashboard today →
Comments
Post a Comment