Skip to main content
Bulk social media CSV import

Bring your whole queue
in one upload

Your content already exists. It is sitting in a spreadsheet, or in a scheduler you have decided to leave. Export it, drop the file in, and it becomes a scheduled queue here. Nothing is retyped and nothing is lost in the move.

By Tayyab, Founder

Available onFreeStarterProAgency

Bulk CSV import moves an existing content queue into Content Drifter in one upload instead of retyping it. Content Drifter validates every row against the same publishing rules it enforces at publish time, so an import can never create a post that will fail later, and it imports the good rows while reporting the bad ones by line number rather than rejecting the whole file over one bad cell. Rows with no date are scheduled into your peak-engagement slots automatically, so you do not have to invent a whole calendar before you can move.

Their export, not our template

A file exported from another tool uses that tool's column names, and being told to rename everything by hand before the importer will look at it is a strange first task to hand somebody who has just decided to switch to you.

So the usual names are recognised as they come: text, message, post and caption all mean content, network, channel and account all mean platform. Platform spellings are normalised the same way, so X, x (twitter) and Twitter are one network rather than three unknown ones. Anything we genuinely did not recognise is listed back to you rather than silently dropped.

An import can never create a post that fails

Every row is checked against the same validator that runs at publish time. Not an import-time approximation of it, the same code.

A 400-character post aimed at X is refused here, where fixing it costs a moment, rather than accepted and then failing three weeks later on the morning it was due to go out. An importer with looser rules than the publisher has not imported anything. It has scheduled a future failure and told you it succeeded.

47 land, 3 get reported

Most importers are all or nothing: one malformed cell and the entire file is rejected. That behaviour is at its worst on exactly the file you are most likely to have, a couple of hundred rows accumulated over a year, which always contains one row somebody typed badly in a hurry.

Here the good rows import and the rest come back as a list you can act on: line 14 has no content, line 22 names a platform we do not publish to. Line numbers, not a count. "Three rows failed" on a 200-row file is a puzzle; "line 22 names a platform we do not publish to" is a fix.

A date on every row is not required

Competitors demand a timestamp per row, which means a switcher has to invent an entire schedule before they are allowed to move anything. That is a real afternoon of work standing between somebody and your product, for no reason.

Rows without a date are placed into your next open peak-engagement slots and spread across the coming days rather than stacked onto one afternoon. You can upload a bare list of posts with no dates at all and get back a properly paced queue.

You see it before it happens

The upload runs as a preview first and writes nothing. You get the count that is ready, a sample of the posts with the dates they would take, the columns we did not recognise, and every row that needs attention. Nothing exists until you confirm it.

An import can create hundreds of scheduled posts in one click. That is precisely the kind of action that should never be the first thing you find out about.

Nothing imported publishes itself

Everything that lands is scheduled with auto-publishing off, waiting for your approval.

Content you have not reviewed inside Content Drifter should not go out unattended, and a bulk import is exactly the situation where one bad row would otherwise reach an audience before anybody read it.

FAQ

Frequently asked questions

What does the CSV need to look like?

Two columns are required, content and platform, and a date column is optional. Common column names from other tools are recognised automatically, so text, message, post and caption all map to content, and network, channel and account all map to platform. Platform spellings are normalised too: X, x (twitter) and Twitter all resolve to the same network.

What happens if some rows are wrong?

The good rows import and the bad rows are listed with their line numbers and the reason, for example that line 14 has no content or line 22 names a platform we do not publish to. All-or-nothing importers make a 200-row file unusable because of a single typo, and a file exported from another tool always has one.

Can an import create posts that fail to publish?

No. Every row is checked against the same validator the publisher runs, so a 400-character post aimed at X is refused at import time rather than accepted and then failing weeks later when it was due to go out. An importer with looser rules than the publisher has not imported anything, it has scheduled a future failure.

Do I have to put a date on every row?

No, and this is where most importers force unnecessary work. Rows without a date are placed into your next open peak-engagement slots and spread across the coming days rather than stacked on one afternoon. Competitors require a date per row, which means a switcher has to build an entire schedule by hand before they can move anything at all.

Will imported posts publish on their own?

No. Everything imported is scheduled with auto-publishing off, so it waits for your approval. Content you have not reviewed inside Content Drifter should never go out unattended, and a bulk import is exactly the situation where one bad row would otherwise publish itself before anyone looked at it.

Can I see what will happen before it happens?

Yes. The upload runs as a preview first and writes nothing: you see how many rows are ready, a sample of the posts with the dates they would take, which columns were not recognised, and every row that needs fixing. Nothing is created until you confirm.

Keep reading

Related pages people usually open next.

Ready to try it?

Start for free and upgrade as you grow. No credit card required.