What CSV template should I use?
This guide will walk you through the steps to create and fill out your CSV file. Rather than manually creating each post, you can streamline the process by using a CSV file to import your content directly into Publer’s Bulk Uploader. Depending on the columns you populate, you can upload a wide range of post types, including status updates, links, photos, multi-photo posts, threads, follow-up comments, albums, and videos.
With our enhanced CSV file, you gain even more control over your posts. You can add alt text to your media for accessibility, specify boards for Pinterest pins, include CTAs (Calls to Action), and schedule your posts via push notifications.
In the Date column you want to insert the date and/or time when you want the post to be scheduled for (optional).
The preferred date format is YYYY/MM/DD and time format is HH:MM (24 hour military time), but other formats will work too.
This field is optional as you can specify the time once the posts are uploaded or you can pre-specify them with the help of Labels in the CSV file too. See point #6.
The Message column is where you should write the caption/description of the post. This column is required if your post is a status update, so a text-only post.
Modifying your text (making it bold, italic, or using any other styling) will simply change the text in the CSV file but this will not be shown on Publer, due to the way the CSV file is designed.
However, if you style your text in Publer, then copy and paste that to a Google Sheets file (not Excel), and then upload the Google Sheets file into Publer, the styled text will show up properly.
Whenever you want to include special characters (symbols, styled text etc.), it is recommended to use Google Sheets instead of Excel.
In the Link column, you can bulk create and schedule native link posts, posts with a CTA link, and Facebook link carousels.
You can add an external URL when you want your post to be a link-post. Keep in mind, this column takes precedence over the Media URLs column.
You can add here the link to an article, a website, or any link that you want to share. This link will automatically generate a thumbnail (link preview) on Publer.
If you want to create a Link post but change the thumbnail of the link preview, you have to add the link (of an article for example) in the Link column and the public URL of a photo in the Media URL column.
In the Media URL column, you can add the public link to an image or to a video on the Internet (including YouTube, Facebook etc.).
You can also add several links to images on the Internet separated by a comma. Keep in mind that you cannot mix media types within the same post.
The public URLs need to be separated by a comma, as shown below:
https://cdn.publer.io/roadmap.png, https://cdn.publer.io/mobile-roadmap.png
With Publer’s Media Library, you can easily add media to your CSV file without relying on external cloud services. You can copy media URLs individually or in bulk and choose between Comma Separated or New-Line Separated formats for your convenience.
For a more detailed guide, follow the steps here to learn how to use your media files with the CSV file.
The value from this column will be added as the title to the following post types: Facebook videos (not reels), LinkedIn videos and PDF documents, Pinterest pins, TikTok photo carousels, Mastodon spoilers, and WordPress articles.
Note: If you are NOT on the Business plan and are using the CSV file, you will get an error saying "You can't use multi-photo posts since they are not supported with your plan" even when you are using single-photos. For that case, try to use a CSV file without a title for Facebook, as it confuses the system.
The Label is where you can choose the label of your post, which will help you organize your posts better..
Just like links, you can add many of them and separate them by a comma.
You can also use this if/when AutoScheduling in Bulk, if the Date column is empty, and you have labels in your posting schedule for the specific account(s).

Note: We will automatically match the values in the CSV with the labels you may have created in Publer, case insensitive. If we do not find a match, new labels will be created.
The Alt text(s) column is where you can add alt text(s) for images.
If you're creating a carousel or multi-photo post, you can specify individual alt text for each image by separating them with a double pipe "||" in the alt text(s) field.
Format Example:
Alt text for the first photo || Alt text for the second photo || Alt text for the third photo
Make sure the number of alt texts in the CSV file matches the number of media URLs for each post.
Keep in mind that not all social networks support alt text, and the character limit varies.
In the Comment(s) column, you can add and schedule follow-up comments to a post or use it to create threads.
To create a threaded post, separate each thread with a double pipe "||" in the Comment(s) field. This will keep the threads in order. This also applies to follow-up comments.
Example:
First comment/thread || Second comment/thread || Third comment/thread
Note: Comments via the CSV file are currently limited to text only.
This new column is for scheduling posts on the following social networks: Pinterest Pins, Facebook Photo Posts, and Google Business Photos.
Here are a few important details:
Pinterest Pins: Ensure the board name is valid. If not, we'll use the default board you've set in Publer.
Facebook Photo Posts: To schedule for a specific album instead of the timeline, make sure the album name is valid.
Google Business Photos: This works only for Google Business Photos. The value should match one of the following categories: CATEGORY_UNSPECIFIED, COVER, PROFILE, LOGO, EXTERIOR, INTERIOR, PRODUCT, AT_WORK, FOOD_AND_DRINK, MENU, COMMON_AREA, ROOMS, TEAMS, ADDITIONAL.
These are all case-insensitive, but please make sure you enter the correct and valid board and album names for Pinterest Pins and Facebook Photo Posts.
If you’re crossposting to a specific Pinterest board, Facebook album, or Google category, we recommend creating separate CSV files with this column customized for each social network.
In this new column, you can specify the following subtypes, case insensitive: Short, Reel, Story, PDF, Photo, Event, and Offer.
Short: For YouTube Shorts
Reel or Story: For Meta Reels or Stories (Facebook + Instagram)
PDF: For LinkedIn PDF documents
Photo, Event, or Offer: For Google Business Photos, Events, and Offers
Note: We automatically detect vertical videos as Shorts or Reels, so you don’t need to manually fill in this column in those cases.
If you’re crossposting to both Facebook Reels and Instagram Stories, we recommend creating separate CSV files, each customized for the respective social network.
In this column, you can now automate CTAs for Facebook link posts and Google posts.
For Facebook link posts: One of the following values, case insensitive, NO_BUTTON, MESSAGE_PAGE, APPLY_NOW, CONTACT_US, SIGN_UP, SUBSCRIBE, LEARN_MORE, WATCH_MORE, WATCH_VIDEO, BOOK_TRAVEL, BUY_NOW, BUY_TICKETS, GET_QUOTE, ORDER_NOW, SHOP_NOW, DOWNLOAD, INSTALL_APP, LISTEN_MUSIC, USE_APP, PLAY_GAME, DONATE_NOW.
For the CALL_NOW button, simply fill this column with a valid phone number, i.e., (202) 555-0131.
For Google posts: One of the following values, case insensitive, BOOK, ORDER, SHOP, LEARN_MORE, SIGN_UP, CALL.
Except for CALL, all the other CTA require a Link.
This column gives you the option to schedule posts via push notifications.
To receive reminders for your scheduled posts, simply enter TRUE in this column, case insensitive.
Scheduling posts via reminders help you take advantage of features that are only available in social media apps, such as adding stickers to Facebook and Instagram stories, selecting trending sounds for Facebook reels, Instagram reels, and YouTube shorts, and using TikTok’s advanced video creation tools.
To make it easier for you, we have also created a Template with only the column names. You can simply download the Template, fill it with your posts using Excel or Google Sheets, and upload it to Publer.
If you don't like Excel, you can also use Google Sheets. Take a look at this working example. Simply make a copy of the Google Spreadsheet (File -> Make a copy). Fill in your posts (without changing/removing the column names) and save it as a CSV (File -> Download As -> Comma-separated values).
If you have a default watermark, it will be automatically added to each photo, video, and link thumbnail.
Sometimes, a CSV file may take longer than usual to upload depending on the size & content of the CSV, or the number of CSV files that are being processed by Publer. Learn more about that here.
Specifying follow-up comments or other post options such as Albums, Boards, Location, Auto-Sharing etc. is not supported via the CSV file. You have to do that manually for each post, after the CSV is uploaded. For Pinterest boards, you can also set a default board so you don't have to select the board manually for each post.
Now that you have created your CSV file, you can follow the steps here to upload it to Publer and schedule your posts.
With our enhanced CSV file, you gain even more control over your posts. You can add alt text to your media for accessibility, specify boards for Pinterest pins, include CTAs (Calls to Action), and schedule your posts via push notifications.
The CSV file you're uploading needs to have 11 columns:
1. The Date column.
In the Date column you want to insert the date and/or time when you want the post to be scheduled for (optional).
The preferred date format is YYYY/MM/DD and time format is HH:MM (24 hour military time), but other formats will work too.
This field is optional as you can specify the time once the posts are uploaded or you can pre-specify them with the help of Labels in the CSV file too. See point #6.
2. The Text column.
The Message column is where you should write the caption/description of the post. This column is required if your post is a status update, so a text-only post.
Modifying your text (making it bold, italic, or using any other styling) will simply change the text in the CSV file but this will not be shown on Publer, due to the way the CSV file is designed.
However, if you style your text in Publer, then copy and paste that to a Google Sheets file (not Excel), and then upload the Google Sheets file into Publer, the styled text will show up properly.
Whenever you want to include special characters (symbols, styled text etc.), it is recommended to use Google Sheets instead of Excel.
3. The Link column.
In the Link column, you can bulk create and schedule native link posts, posts with a CTA link, and Facebook link carousels.
You can add an external URL when you want your post to be a link-post. Keep in mind, this column takes precedence over the Media URLs column.
You can add here the link to an article, a website, or any link that you want to share. This link will automatically generate a thumbnail (link preview) on Publer.
If you want to create a Link post but change the thumbnail of the link preview, you have to add the link (of an article for example) in the Link column and the public URL of a photo in the Media URL column.
4. The Media URL column.
In the Media URL column, you can add the public link to an image or to a video on the Internet (including YouTube, Facebook etc.).
You can also add several links to images on the Internet separated by a comma. Keep in mind that you cannot mix media types within the same post.
The public URLs need to be separated by a comma, as shown below:
https://cdn.publer.io/roadmap.png, https://cdn.publer.io/mobile-roadmap.png
With Publer’s Media Library, you can easily add media to your CSV file without relying on external cloud services. You can copy media URLs individually or in bulk and choose between Comma Separated or New-Line Separated formats for your convenience.
For a more detailed guide, follow the steps here to learn how to use your media files with the CSV file.
5. The Title column.
The value from this column will be added as the title to the following post types: Facebook videos (not reels), LinkedIn videos and PDF documents, Pinterest pins, TikTok photo carousels, Mastodon spoilers, and WordPress articles.
Note: If you are NOT on the Business plan and are using the CSV file, you will get an error saying "You can't use multi-photo posts since they are not supported with your plan" even when you are using single-photos. For that case, try to use a CSV file without a title for Facebook, as it confuses the system.
6. The Label column.
The Label is where you can choose the label of your post, which will help you organize your posts better..
Just like links, you can add many of them and separate them by a comma.
You can also use this if/when AutoScheduling in Bulk, if the Date column is empty, and you have labels in your posting schedule for the specific account(s).

Note: We will automatically match the values in the CSV with the labels you may have created in Publer, case insensitive. If we do not find a match, new labels will be created.
7. The Alt text(s) column.
The Alt text(s) column is where you can add alt text(s) for images.
If you're creating a carousel or multi-photo post, you can specify individual alt text for each image by separating them with a double pipe "||" in the alt text(s) field.
Format Example:
Alt text for the first photo || Alt text for the second photo || Alt text for the third photo
Make sure the number of alt texts in the CSV file matches the number of media URLs for each post.
Keep in mind that not all social networks support alt text, and the character limit varies.
8. The Comment(s) column.
In the Comment(s) column, you can add and schedule follow-up comments to a post or use it to create threads.
To create a threaded post, separate each thread with a double pipe "||" in the Comment(s) field. This will keep the threads in order. This also applies to follow-up comments.
Example:
First comment/thread || Second comment/thread || Third comment/thread
Note: Comments via the CSV file are currently limited to text only.
9. The Pin board, FB album, or Google category column.
This new column is for scheduling posts on the following social networks: Pinterest Pins, Facebook Photo Posts, and Google Business Photos.
Here are a few important details:
Pinterest Pins: Ensure the board name is valid. If not, we'll use the default board you've set in Publer.
Facebook Photo Posts: To schedule for a specific album instead of the timeline, make sure the album name is valid.
Google Business Photos: This works only for Google Business Photos. The value should match one of the following categories: CATEGORY_UNSPECIFIED, COVER, PROFILE, LOGO, EXTERIOR, INTERIOR, PRODUCT, AT_WORK, FOOD_AND_DRINK, MENU, COMMON_AREA, ROOMS, TEAMS, ADDITIONAL.
These are all case-insensitive, but please make sure you enter the correct and valid board and album names for Pinterest Pins and Facebook Photo Posts.
If you’re crossposting to a specific Pinterest board, Facebook album, or Google category, we recommend creating separate CSV files with this column customized for each social network.
10. The Post subtype - I.e. story, reel, PDF .. column.
In this new column, you can specify the following subtypes, case insensitive: Short, Reel, Story, PDF, Photo, Event, and Offer.
Short: For YouTube Shorts
Reel or Story: For Meta Reels or Stories (Facebook + Instagram)
PDF: For LinkedIn PDF documents
Photo, Event, or Offer: For Google Business Photos, Events, and Offers
Note: We automatically detect vertical videos as Shorts or Reels, so you don’t need to manually fill in this column in those cases.
If you’re crossposting to both Facebook Reels and Instagram Stories, we recommend creating separate CSV files, each customized for the respective social network.
11. The CTA - For Facebook links or Google column.
In this column, you can now automate CTAs for Facebook link posts and Google posts.
For Facebook link posts: One of the following values, case insensitive, NO_BUTTON, MESSAGE_PAGE, APPLY_NOW, CONTACT_US, SIGN_UP, SUBSCRIBE, LEARN_MORE, WATCH_MORE, WATCH_VIDEO, BOOK_TRAVEL, BUY_NOW, BUY_TICKETS, GET_QUOTE, ORDER_NOW, SHOP_NOW, DOWNLOAD, INSTALL_APP, LISTEN_MUSIC, USE_APP, PLAY_GAME, DONATE_NOW.
For the CALL_NOW button, simply fill this column with a valid phone number, i.e., (202) 555-0131.
For Google posts: One of the following values, case insensitive, BOOK, ORDER, SHOP, LEARN_MORE, SIGN_UP, CALL.
Except for CALL, all the other CTA require a Link.
12. The Reminder Column
This column gives you the option to schedule posts via push notifications.
To receive reminders for your scheduled posts, simply enter TRUE in this column, case insensitive.
Scheduling posts via reminders help you take advantage of features that are only available in social media apps, such as adding stickers to Facebook and Instagram stories, selecting trending sounds for Facebook reels, Instagram reels, and YouTube shorts, and using TikTok’s advanced video creation tools.
Tips & Info:
To make it easier for you, we have also created a Template with only the column names. You can simply download the Template, fill it with your posts using Excel or Google Sheets, and upload it to Publer.
If you don't like Excel, you can also use Google Sheets. Take a look at this working example. Simply make a copy of the Google Spreadsheet (File -> Make a copy). Fill in your posts (without changing/removing the column names) and save it as a CSV (File -> Download As -> Comma-separated values).
If you have a default watermark, it will be automatically added to each photo, video, and link thumbnail.
Sometimes, a CSV file may take longer than usual to upload depending on the size & content of the CSV, or the number of CSV files that are being processed by Publer. Learn more about that here.
Specifying follow-up comments or other post options such as Albums, Boards, Location, Auto-Sharing etc. is not supported via the CSV file. You have to do that manually for each post, after the CSV is uploaded. For Pinterest boards, you can also set a default board so you don't have to select the board manually for each post.
Now that you have created your CSV file, you can follow the steps here to upload it to Publer and schedule your posts.
Updated on: 03/03/2025
Thank you!