Skip to content
English
  • There are no suggestions because the search field is empty.

Understanding the Google Sheets integration

Unlike other integrations there are some nuances to how Google Sheets are synced with your Sked Ideas. Use this article as reference for best practices.

Importing ideas from Google Sheets

Connect a Google spreadsheet and Sked turns its rows into ideas in your content planner. This page explains how your sheet is read, what happens when you change it, and what to do when something does not look right.

Before you start: the sheet wins by default

A Google Sheets source is set to Keep updated from the sheet. When you change a row, Sked overwrites that idea, including changes someone made inside Sked.

If your team edits ideas in Sked after they arrive, change this before you import. Open the source, expand Advanced, and under When the source changes choose Create only. New rows still become ideas, but an idea someone has edited in Sked is left alone from then on.

There is a list further down of the things a sync never touches, whichever mode you pick.

Quick start

A layout that behaves:

id Title Date Sync to Sked Caption
1 Spring launch teaser 2026-07-15 yes Doors open Monday.
2 Behind the scenes 2026-07-18 yes A look at the studio.
3 Customer story 2026-07-22   Draft, not ready.

Why each column is there:

  • id gives every row a permanent identity, so you can add, remove and reorder rows freely. This is the single most useful thing you can do. Sked also accepts key, row id, rowid, external id or externalid as the name of this column.
  • Title is the only required mapping. Without it every idea imports as "Untitled".
  • Date becomes the idea's scheduled date.
  • Sync to Sked lets you keep drafts out of Sked until they are ready. It is optional.
  • Everything else is yours to map as you like.

Then:

  1. Make sure row 1 of every tab is the real column headers. Not a title, not a merged banner across the top.
  2. In Sked, open the connection, choose a Brand group and tick the spreadsheets you want to import.
  3. Under Column mapping, point Title at a column. Map anything else you want.
  4. Press Save & sync.

How Sked reads your sheet

Every tab that looks like a table is read. A tab qualifies when row 1 has two or more different, non-empty header cells. Its rows all become ideas.

A tab with a single column qualifies only when that one header reads like a column name. So a one-column tab headed Titleor Notes is read, and a one-column tab headedInstructions, Read me, Guide or FAQ, or holding a whole sentence, is skipped. A tab with fewer than two rows is skipped as well.

This is how an instructions tab avoids being imported as a pile of ideas. A tab with two or more columns is treated as a table whatever it contains, so if you keep a two-column notes tab in the same spreadsheet, use the Sync to Sked column to keep it out.

The whole sheet is re-read on every sync. There is no date window and no "only new rows" setting, which is why there is no initial-import option for Google Sheets. An edit anywhere in the sheet is picked up.

You can point one source at several spreadsheets, and you can add several sources to the same connection, each with its own brand group and mapping. You can even point two sources at the same spreadsheet to feed two different brand groups.

Which columns fill which idea fields

Idea field What it is
Title The idea's name. Required.
Details The body of the idea.
Caption Post caption.
Hashtags / keywords Free text.
Creative brief Free text.
Copy brief Free text.
Labels Comma separated in the cell, one label each.
Scheduled date The date the idea sits on in the planner.
Status Used to route ideas, see below.
Link / source URL A link back to wherever the idea came from.

Sked fills some of these automatically when your headers are named the obvious way. A column headed Title or Name fills Title; Description, Notes or Details fills Details; Due, Date or Due date fills the scheduled date; Statusor Stage fills Status; Labels or Tags fills Labels. Anything else you map yourself.

A field you do not map stays empty on every idea.

Row identity, and why an id column matters

Sked has to recognise a row it has seen before, so that editing it updates the same idea instead of creating a second one.

  • With an id column, the value in that cell identifies the row. Move it, sort around it, insert above it: the idea stays attached.
  • Without one, the row's position identifies it. Row 5 is "row 5".

When rows shift, Sked tries to reattach them by recognising their content, and it usually succeeds. It cannot when the match is ambiguous: two rows holding identical content, a reordering that swaps rows around, or several rows changing in the same sync as the shift. When it cannot, ideas end up showing the content of the row that now sits in their old position.

An id column removes all of this. It does not matter what the values are, only that each row has one and no two rows share it.

Two more cases:

  • A blank cell in an id column. The row still imports, identified by its position for as long as the cell stays empty. Filling the id in later gives that row a new identity, so it imports again as a new idea and the original is left behind.
  • Two rows with the same id. The first one wins. The others are skipped, and the sync tells you how many.

Changes that re-create everything

Two changes replace every idea on a tab. Nothing warns you first, so make them before your first import rather than after.

Renaming a tab. The tab name is part of how Sked recognises a row, so renaming it makes every row on it look brand new. All of them import again as fresh ideas, and the originals stay in Sked, no longer connected to anything.

Renaming or removing the id column. If Sked no longer recognises the column as an id column, the whole tab falls back to position, and every row takes on a new identity. The effect is the same: a full set of duplicates.

Deciding your tab names and your id column before you import avoids both.

Adding, changing and deleting rows

Editing a row updates its idea, subject to the update mode below.

Adding a row is safe with an id column: the new row becomes a new idea and nothing else changes. Without one, the rows below shift down a position, and Sked reattaches them where it can.

Deleting a row: Sked never deletes the idea. That is deliberate, so nothing you do in the spreadsheet can destroy work in Sked. The consequence is that with an id column the idea simply stays behind, no longer updated by anything. Without one, the rows below shift up, and their ideas can end up showing the wrong row's content.

If you use a positional sheet and want to remove something, clear the row's contents rather than deleting the row. Better still, add an id column.

Moving or reordering rows behaves the same way: safe with an id column, and a source of mismatches without one.

Update modes, and what a sync never touches

Keep updated from the sheet (the default). Any change to a row overwrites the mapped fields on its idea, including changes someone made inside Sked.

Create only. New rows become ideas. A row that has already been imported is updated only while nobody has edited its idea in Sked. Once someone edits it, the sheet stops overwriting that idea. Any change to a mapped field counts as an edit.

Whichever mode you choose, a sync only ever writes the fields you mapped. These are never touched by an import:

  • assignees
  • social accounts on the idea
  • attached media
  • pinned items
  • sign-off and approvals
  • ordering in the planner

The Sync to Sked column

Map a column to Sync to Sked and only rows whose cell reads as yes are imported. Leave it unmapped and every row is imported.

Values that count as yes: a ticked checkbox, or the text true, yes, y, 1, x, a tick character, checked, or v. Capitals and spaces around the value do not matter. Anything else, including an empty cell, means no.

Two things worth knowing:

  • Turning a row off does not delete its idea. The idea stays in Sked exactly as it was and simply stops being updated.
  • Turning it back on updates the same idea, rather than creating a second one.

If you map this column and then delete or rename it in the sheet, every row reads as no and nothing imports.

Dates

The reliable way: format the cell as a date in Google Sheets, or type it as 2026-07-15. Both are unambiguous and always read correctly.

Other formats that work:

Example Notes
2026-07-15 Always safe.
15/07/2026 Day first, unless your spreadsheet's language is US English.
2026/07/15 Year first is always read as year first.
15 Jul 2026, July 15th, 2026 Month names, either order.
2026-07-15 14:30 A time can follow any of these.

What to avoid:

  • Dots, as in 15.07.2026. These are only read on spreadsheets whose language writes dates that way, such as German or Russian. On an English spreadsheet a dotted value is not treated as a date, because it is more often a version number or a score.
  • Two-digit years, as in 15/07/26. They are always read as the 2000s.
  • Ambiguous numeric dates, as in 05/07/2026. Sked follows your spreadsheet's own language setting to decide whether that is 5 July or 7 May. Use 2026-07-05 and the question does not arise.

If Sked cannot read a date, the idea still imports, with no scheduled date. Nothing flags it, so if ideas are arriving without dates this is the first thing to check.

Status routing

If you map a Status column, you can send ideas to either Idea Pad or Workspace depending on the value in that cell.

Matching is exact, including capitalisation, so Ready and ready are two different values. Any value you have not routed, and any row with an empty status, lands in Idea Pad.

Limits

A single sync imports up to 25,000 rows. Anything beyond that is picked up on the next one.

On a tab that large, Sked stops reattaching rows that moved, so an id column matters more the bigger your sheet gets.

When something looks wrong

Ideas imported blank, or titled "Untitled".

Row 1 of the tab is not real column headers, or Title is mapped to a column that is not there. Check row 1 is a plain header row with no merged cells, then check the mapping. The source shows a warning when a mapped column is missing from the sheet. Fix it, then Re-import.

Ideas showing the wrong row's content, or duplicated.

Almost always identity. Did someone insert or delete a row, reorder rows, rename the tab, rename the id column, or fill in an id that was blank? Add an id column to stop it recurring. Existing ideas that already picked up the wrong content need fixing by hand.

Fewer ideas than rows, or nothing at all.

Work through these in order: the Sync to Sked column is excluding rows; the tab was skipped because row 1 does not look like headers; two rows share an id, so the later ones were skipped; or the sheet is past the row limit and the rest arrive next sync. The activity list on the connection reports each of these with a count.

Edits in Sked being overwritten.

The source is on Keep updated from the sheet. Switch it to Create only.

Edits in the sheet not appearing.

The source is on Create only and somebody has edited that idea in Sked, so the sheet no longer overwrites it. Either edit it in Sked from now on, or switch the source to Keep updated from the sheet and accept that the sheet wins.

Making a fix take effect

  • Save & sync re-checks the rows already imported against your new mapping. Use it after changing a mapping.
  • Re-import, on the source, re-reads the spreadsheet and re-applies the mapping to rows already imported. Use it after fixing a header row or a column that was missing. It is unavailable while you have unsaved changes or a sync is already running.
  • Sync now, on the connection, fetches the latest from the spreadsheet straight away instead of waiting for the next scheduled sync.