PostRSS CSV Sources: Publishing Social Posts From a Spreadsheet

PostRSS CSV sources solve a problem that RSS cannot: what to do when the content you want to publish does not come from a feed. A list of evergreen tips, a season of promotions, a series of quotes from your case studies, product highlights for a catalogue that has no feed, or a month of social posts an agency drafted in a spreadsheet. PostRSS is built around RSS and Atom feeds, but on the Professional plan and above it also accepts a CSV file as a source, where one row becomes one post. The spreadsheet becomes the feed.
This guide explains when a CSV source makes more sense than a feed, how to prepare the file so that posts come out right, how the same targets, formats and schedules apply, how to check the first posts and fix the usual mistakes, and how teams use spreadsheets to plan social content a month at a time. It describes the feature as shown on the PostRSS product page and on postrss.com; the exact column layout and limits are shown in the app when you add a CSV source, so follow the template there rather than this article for the file format itself.
When a Spreadsheet Beats a Feed
A feed is the right source when content is published somewhere first, such as a blog, a shop or a podcast, and you want each new item announced. A CSV is the right source when the content exists only as a list. Typical cases:
- Evergreen content. Twenty tips, facts or answers from your help pages, each with a link to the page, to be posted over several weeks.
- Campaigns with a fixed schedule. A launch, a sale or an event series where the posts are written in advance and should go out in order.
- Content from a system without a feed. A product list exported from an inventory tool, a list of job openings, a programme of events.
- Agency work. A client approves a month of posts in a spreadsheet; the spreadsheet is uploaded and published without retyping.
- Recycling the archive. Your best older articles, exported with their links and images, posted again at a steady pace.
If the content will keep growing on a website, a feed is still better, because it updates itself. The article on finding your RSS feed URL on different platforms shows that most sites have a feed even when it is not obvious. Use CSV for the cases above, not as a workaround for a feed you have not found yet.
Preparing the File
A CSV is a plain text file with one row per record and columns separated by commas. Spreadsheet programs export it with one click. The principles that matter for posting are the same regardless of the exact column names, which you should take from the template in the PostRSS app:
- One row, one post. Each row needs the text or title that will become the post, the link it should point to, and, ideally, an image address. Think of each row as a feed item.
- Full, public links. Links must start with https:// and open without a login. Shortened links work but lose the network’s preview in some cases; the full page address with its own Open Graph image is safer.
- Image addresses, not files. The image column, where used, holds a public URL to an image, not an attachment. If a row has no image, PostRSS can take the picture from the page’s Open Graph tags, as it does for feed items, so pages with good social images need no image column at all.
- Clean text. No HTML, no leading or trailing spaces, no line breaks inside a cell unless the template allows them. Quotation marks inside text must be escaped the way your spreadsheet program does automatically on export.
- UTF-8 encoding. Lithuanian, German or any accented characters only survive if the file is saved as UTF-8. Most spreadsheet programs offer “CSV UTF-8” as an export option; choose it.
- Order. Rows are the order you want, unless you plan to use random order in the target settings. Put the first post you want published at the top.
- Unique rows. Two identical rows produce two identical posts. Remove duplicates before export.
Keep the master spreadsheet, not just the CSV. When you need to add rows or fix a typo, edit the spreadsheet and export again. Before uploading, open the CSV in a plain text editor once; what you see there is what PostRSS will read.
Connecting Targets, Formats and Schedules
A CSV source is a source like any other. Once uploaded, you connect it to targets: a Facebook Page, an X account, a LinkedIn page, a Telegram channel, a Pinterest board, a team chat, a blog, or several of each. Each target has its own settings, so the same spreadsheet can post short titles to one network and longer text to another. PostRSS offers nine message formats built from the item title, the item description, the page title or your own static text, and the same choice applies to rows from a CSV; our article on choosing message formats explains the combinations.
Scheduling is where CSV sources shine. With a feed, PostRSS publishes items as they appear. With a CSV, all the rows are there from the start, so the schedule decides the pace: the maximum posts per update, the posting windows and exact times available on paid plans, and the order, newer or older first or random. A list of thirty tips posted at one a day at 09:00 is a month of content from one upload. The settings are explained in auto-posting schedules, windows and limits.
Add UTM parameters per target so that your analytics shows what each network brought, exactly as for feed sources. PostRSS appends your parameters to every link, so the links in the CSV should be clean page addresses without tracking parameters of their own.
Feed Source and CSV Source Compared
| Aspect | RSS or Atom feed | CSV file |
|---|---|---|
| Where content comes from | A site that publishes it first | A spreadsheet you prepare |
| New items | Appear automatically as the site publishes | Added by uploading a new or updated file |
| Best for | Blogs, shops, podcasts, news | Evergreen lists, campaigns, exports, agency plans |
| Images | From the item or the page’s Open Graph tags | From an image column or the page’s Open Graph tags |
| Order and pace | Mostly as published, with limits and windows | Fully controlled by row order and schedule settings |
| Plan | All plans | Professional plan and above |
| Maintenance | None once connected | Keep the master spreadsheet; re-export to change |
Checking the First Posts
Before connecting a large file to every network, run a small test. Upload a CSV with two or three rows, connect it to one target, set a tight schedule and watch the posts appear. Check four things on each: the text is what you intended and not cut off, the link opens the right page, the image is the one you expected, and accented characters display correctly. If all four are right, upload the full file and connect the remaining targets, starting with the network where your audience is largest so that any remaining problem is caught where it matters most. If something is wrong, the cause is almost always in the file, and fixing a three-row file is faster than fixing a three-hundred-row one.
After the full upload, check the PostRSS reports for the source over the first day or two. Posts that failed on a network usually point to a link that network rejected or an image it could not fetch. Correct the rows, re-export and re-upload as the app instructs; do not create a second source with the same rows unless you want duplicates.
Common Mistakes
- Wrong separator. Some regional spreadsheet settings export with semicolons instead of commas. Follow the template’s expectation and check the file in a text editor.
- Broken encoding. Accented characters turning into question marks means the file was not saved as UTF-8.
- Private or expired links. A link to a staging site, a draft page or a file in a private folder posts fine and opens as an error for everyone else.
- Oversized text. Networks have length limits; PostRSS adapts the post to each network, but a 900-character cell will be shortened. Write for the shortest network you use or choose a title-only format there.
- Images from pages that block fetching. If the image column points to a page that refuses external requests, the post goes out without a picture. Host images where they can be fetched.
- Forgetting the schedule. Uploading a hundred rows with no per-update limit can post many at once. Set the limit before connecting targets.
Planning a Month in a Spreadsheet
The spreadsheet is also a planning tool, and many teams keep it as the single place where social content is written, reviewed and approved. A simple layout: one row per post, columns for the text, the link, the image, the intended week, the owner and an approval mark. Filter to approved rows, export only the columns the template needs, and upload. Next month, copy the sheet, clear the approval marks and start again. For agencies, this is a clean hand-off: the client sees exactly what will be posted and when, and the upload is a two-minute task rather than an afternoon of copying posts into five networks. If the content comes from an existing blog, combine both: the feed handles new articles, and a CSV of the best older ones keeps the channels active between them, which is what our e-marketing team does for clients with a strong archive. General advice on the CSV format itself, if you want to understand the rules for quoting and separators, is in the RFC 4180 specification, and most spreadsheet applications document their own export options, such as the Excel guidance on exporting text files.
Frequently Asked Questions
What is a PostRSS CSV source?
A CSV file uploaded to PostRSS instead of a feed address. Each row becomes one post, with the same targets, message formats, schedules and UTM options as a feed source. It is available on the Professional plan and above.
When should I use a CSV instead of an RSS feed?
When the content exists only as a list: evergreen tips, a campaign written in advance, an export from a system without a feed, or an agency’s monthly plan. If the content is published on a website that keeps growing, use its feed.
What columns does the CSV need?
Follow the template shown in the PostRSS app when you add a CSV source. In general each row needs the post text or title, a full public link and optionally an image address; pages with good Open Graph images need no image column.
How do I control how fast the rows are posted?
With the target settings: the maximum posts per update, posting windows and exact times on paid plans, and the order. Set the per-update limit before connecting targets so a large file does not post all at once.
Why do accented characters look wrong in my posts?
The file was not saved as UTF-8. Export again using your spreadsheet program’s CSV UTF-8 option and check the file in a plain text editor before uploading.
Can I add more rows later?
Yes. Edit the master spreadsheet, export again and update the source as the app instructs. Avoid creating a second source with the same rows unless you intend to post them again.
The Bottom Line
A PostRSS CSV source turns a spreadsheet into a posting schedule: one row, one post, across every network you connect, at the pace you set. Use it for content that exists as a list rather than on a site, follow the template in the app for the columns, save as UTF-8, use full public links, test with three rows before uploading three hundred, and set the per-update limit before connecting targets. Keep the master spreadsheet as the place where posts are planned and approved, and the monthly upload becomes one of the shortest tasks in the marketing calendar.