Gids

How to Post to Social Media from Google Sheets

Google Sheets is already where most teams plan their content. Why not turn it into a publishing engine? This guide shows you how to set up a spreadsheet that automatically posts your content to TikTok, Instagram, YouTube and more, without leaving your browser.

Hoe dit werkt

The setup has three parts:

  1. Google Sheets as your content calendar (titles, captions, video links, target platforms, publish dates)
  2. Een automatiseringstool (n8n, Make.com, or Airtable) that reads new rows from the sheet
  3. De Upload-Post API that takes the content and publishes it to your social accounts

When you add a new row to the spreadsheet with status "ready", the automation picks it up, sends the video and caption to the API, publishes to all selected platforms, and updates the row with "published" and the post URLs. The whole thing runs in the background.

Stap 1: Stel je spreadsheet in

Create a Google Sheet with these columns:

A: Titel B: Bijschrift C: Video-URL D: Platforms E: Publicatiedatum F: Status G: Post-URL\'s
Zomeruitverkoop promotie 50% off everything this week! https://drive.google.com/... tiktok, instagram, youtube 2025-09-22 10:00 ready
Achter de schermen Hoe we onze producten maken https://drive.google.com/... tiktok, instagram, linkedin 2025-09-23 12:00 pending

The "Video-URL" column should contain either a public Google Drive link, a Dropbox link, or any publicly accessible URL to the video file. The automation tool will download it and pass it to the API.

The "Status" column is what triggers the automation. Set it to "ready" when a piece of content is approved and should be published. The workflow will change it to "published" after a successful upload.

Stap 2: Kies je automatiseringstool

There are three good options, each with its own strengths:

Optie A: n8n (aanbevolen voor volledige controle)

n8n is an open source automation tool that gives you the most flexibility. We have a ready made template that does exactly what we\'ve described:

Import either template into your n8n instance with one click, plug in your API key, and it works out of the box. The workflow:

  1. Triggers op een schema (bijv. elk uur) of handmatig
  2. Leest rijen uit Google Sheets waar Status = "klaar"
  3. Download de video van de URL in elke rij
  4. Verzendt het naar de Upload-Post API met de titel, bijschrift en platforms uit het blad
  5. Werk de rijstatus bij naar "gepubliceerd" met bericht-URLs

For more n8n automation ideas, browse the full n8n template library.

Optie B: Make.com (goed voor teams die al op Make zitten)

Make.com connects Google Sheets to the Upload-Post API using its HTTP module. The flow is the same:

  1. Google Sheets-module kijkt naar rijen waar Status = "klaar"
  2. HTTP-module downloadt het videobestand
  3. HTTP module posts to https://api.upload-post.com/api/upload with multipart form data
  4. Google Sheets-module werkt de rij bij met resultaten

The HTTP module needs these settings: Method = POST, Body Type = Multipart/form-data, and a custom header with your API key. Check our Make.com sjablonen for prebuilt scenarios.

Optie C: Airtable (voor teams die Airtable boven Sheets verkiezen)

If you\'re already using Airtable, you can skip Google Sheets entirely. Airtable has built in automation scripts that trigger when a record is created or updated. Our Airtable integratiehandleiding walks through setting up an automation that:

  1. Triggers wanneer de status van een record verandert naar "klaar"
  2. Voert een script uit dat de content naar de Upload-Post API verzendt
  3. Werk het record bij met het resultaat

Stap 3: Configureer de Upload-Post API-aanroep

Regardless of which tool you use, the API call is the same. Here\'s what each spreadsheet column maps to:

Spreadsheet kolom API parameter Notities
TiteltitleMain post caption for all platforms
BijschriftdescriptionUitgebreide tekst (YouTube, LinkedIn, Facebook)
Video-URLvideoKan een URL of bestand binair zijn
Platformsplatform[]Splits komma-gescheiden string in array
Publicatiedatumscheduled_dateISO-8601 formaat; laat leeg voor onmiddellijk

Voorbeeld cURL ter referentie

curl -X POST https://api.upload-post.com/api/upload \
  -H "Autorisatie: Apikey jouw-api-sleutel-hier" \
  -F "video=https://drive.google.com/uc?id=FILE_ID" \
  -F "user=mybrand" \
  -F "title=Summer sale promo" \
  -F "description=50% off everything this week!" \
  -F "platform[]=tiktok" \
  -F "platform[]=instagram" \
  -F "platform[]=youtube" \
  -F "scheduled_date=2025-09-22T10:00:00Z" \
  -F "timezone=America/New_York"

Notice how you can pass the video as a URL instead of a file upload. This works with any publicly accessible video link, including Google Drive shared links.

Geavanceerd: AI-gegenereerde bijschriften vanuit je spreadsheet

You can take this further by adding an AI step between reading the sheet and posting. Instead of writing captions manually, include just a topic or brief note in your spreadsheet and let an LLM generate platform optimized captions.

Our n8n template for Google Drive naar sociale media met AI-beschrijvingen does exactly this. It uses Gemini to generate tailored captions for each platform based on a short description you provide.

There\'s also a template that lets you generate and schedule posts with GPT-4 and get Telegram approval before they go live. Perfect for teams that want AI assistance but still need a human in the loop.

Platform specifieke bijschriften toevoegen

If you want different captions per platform, add extra columns to your sheet like "TikTok Caption", "Instagram Bijschrift", etc. Then map them to the API\'s platform specific parameters:

  • tiktok_title for TikTok specific captions with hashtags
  • instagram_title for Instagram with call to actions
  • youtube_title and youtube_description for YouTube with SEO keywords
  • linkedin_title for LinkedIn with a professional tone

Use our character counter to make sure your captions fit within each platform\'s limits before adding them to the sheet.

Afbeeldingen en carrousels vanuit de spreadsheet verwerken

The same approach works for images. Instead of a single video URL column, use multiple image columns or a comma-separated list of image URLs. Then use the /api/upload_photos endpoint instead:

curl -X POST https://api.upload-post.com/api/upload_photos \
  -H "Autorisatie: Apikey jouw-api-sleutel-hier" \
  -F "photos[][email protected]" \
  -F "photos[][email protected]" \
  -F "photos[][email protected]" \
  -F "user=mybrand" \
  -F "title=Our new collection" \
  -F "platform[]=instagram" \
  -F "platform[]=tiktok"

Resultaten volgen terug in de spreadsheet

After the API returns a response, your automation tool should update the spreadsheet row with:

  • Status veranderd van "klaar" naar "gepubliceerd" (of "mislukt" als er iets misging)
  • Post URL\'s voor elk platform, zodat je kunt doorklikken en verifiëren
  • Tijdstempel van wanneer de post live ging

This gives you a complete audit trail of every piece of content published, all in one place. No need to check each platform\'s dashboard individually.

Veelgestelde vragen

Kan ik dit rechtstreeks met Google Drive-video\'s gebruiken?

Yes. The Upload-Post API accepts video URLs, so you can link directly to files in Google Drive (make sure the sharing is set to "Anyone with the link"). The n8n templates handle Google Drive authentication automatically.

Wat als een post mislukt voor één platform maar succesvol is op andere?

The API response includes individual results per platform. Your automation can update the spreadsheet with partial results, showing which platforms succeeded and which failed (with the error message).

Kunnen meerdere teamleden dezelfde spreadsheet gebruiken?

Absolutely. That\'s one of the biggest benefits of this approach. Your content team fills in the rows, a manager changes the status to "ready" when approved, and the automation handles publishing. Everyone sees the status in real time.

Hoe vaak controleert de automatisering op nieuwe rijen?

You configure this in n8n or Make.com. Common settings are every 15 minutes, every hour, or on a fixed daily schedule. In n8n, you can also trigger manually or use a webhook for instant processing.

Zet je spreadsheet om in een publicatiemotor

Plan in Google Sheets. Publish everywhere. Create a free Upload-Post account and connect it to your content calendar in minutes.

Geen creditcard vereist. 10 gratis uploads inbegrepen.