The journal

Write a campaign for 50 accounts in a spreadsheet

The FlashPosts teamUpdated 3 min read

When a campaign has a version per network or per location, a spreadsheet is the easiest place to write and agree it. Two layouts that work, and how to bring them into FlashPosts without retyping.


Most campaigns are written in a spreadsheet long before they reach a scheduling tool. It's where a client comments, a manager signs off and a local team fills in its details. The trouble starts when someone has to copy fifty cells into fifty boxes by hand.

Layout 1: a column per network

One row per post, with the base caption and a column for each network that needs its own version.

PostCaptionInstagramFacebookTikTokLinkImage 1Image 2
Autumn launchThe autumn menu is here.The autumn menu is here. Link in bio.Autumn menu, first tasteexample.com/autumnexample.com/a1.jpgexample.com/a2.jpg

An empty network cell means that network uses the base caption.

Layout 2: a row per account

One row per account, which suits multi-location campaigns where each location gets its own words.

PostAccountPlatformCaptionLink
Late openinglisbon.storeInstagramLate opening Friday at Rua Augusta, until 10pm.example.com/lisbon
Late openingporto.storeInstagramLate opening Friday at Santa Catarina, until 9pm.example.com/porto
Late openingFacebookLate opening Friday at all our stores.
Late openingLate opening this Friday.

A row that names an account sets that account's version. A row with only a network sets that network's version. A row with neither sets the base caption. An account row with no caption simply gets the post's own caption.

Images, video and several posts in one file

  • Images: one link per cell in numbered columns, Image 1, Image 2 and so on, in the order they should appear.
  • Video: a single Video column.
  • Several posts: a Post column holds several campaigns in one file. You choose which one to load.

Bringing it into FlashPosts

Save the sheet as .xlsx or .csv and drop it on the composer. FlashPosts reads the layout from the headings, and it's forgiving about them: "IG", "FB" and "TikTok caption" all work, in any case. From Google Sheets, download the sheet as .xlsx or .csv first.

You then see each network's and each account's version, checked against its caption limit, before anything is sent. Long captions are easy to miss in a sheet; the character counter shows the limit on each network.

Pinterest is the exception. Its rules require the person scheduling to choose each Pin, so Pins are scheduled one by one rather than imported from a sheet.

Habits that keep sheets clean

  • Keep facts in their own columns. Address, hours and offer in columns of their own make a template easy to fill and a mistake easy to spot.
  • One sheet per campaign, a row per account. It doubles as your record of what went where.
  • Agree the sheet, then import it unchanged. Edits made after import never make it back to the sheet the client approved.

Frequently asked questions

Can I import social media captions from a CSV?

Yes. FlashPosts imports .csv and .xlsx files into the composer: a base caption, a version per network or per account, links, and image or video links.

Does the import schedule many posts at once?

It fills in one campaign at a time, with all its versions. A file can hold several campaigns in a Post column, and you choose which one to load, then schedule it.

Does it work with Google Sheets?

Yes. In Google Sheets choose File, then Download, then .xlsx or .csv, and import that file.

Filed underpublishingworkflow

Publish once, everywhere

FlashPosts sends one post to every account you run, on ten networks, reworded for each one, and reports back on all of them in one place. Free covers three accounts and needs no card.

Start free
Read next