\n\n\n

How to Automatically Publish Blog Posts from a Google Sheet

Learn how to build a simple automation that turns your Google Sheet content calendar into live WordPress blog posts — no developer required.

← All Articles
🇬🇧 English

Stop Copying and Pasting Your Content Manually

If you manage a content calendar in Google Sheets and then manually copy each post into WordPress, you already know how time-consuming and error-prone that process is. A title gets mistyped. A category gets forgotten. A post goes live on the wrong date. These are small mistakes with real consequences for your SEO and brand consistency.

The good news: this entire workflow can be automated. In this guide, you'll learn exactly how to connect Google Sheets to WordPress so that your content team fills in a spreadsheet — and posts publish themselves.

What You'll Need Before You Start

  • A Google Sheet set up as your content calendar
  • A WordPress website with REST API access enabled (it is by default)
  • An automation tool like n8n, Make, or Zapier
  • An Application Password generated in your WordPress user profile

No coding knowledge is required. This is a no-code workflow that any SME owner or marketing manager can set up in an afternoon.

Step 1: Structure Your Google Sheet Correctly

Your Google Sheet needs clearly defined columns so the automation knows what to read. Here's a recommended structure:

  • Column A – Title: The blog post headline
  • Column B – Content: The full post body (can include basic HTML)
  • Column C – Category: WordPress category name or ID
  • Column D – Publish Date: Format as YYYY-MM-DD
  • Column E – Status: Use values like Ready, Draft, or Published
  • Column F – Tags: Comma-separated tag list

The Status column is critical. Your automation will only process rows marked as Ready, and after publishing, it will update that row to Published — preventing duplicate posts.

Step 2: Connect Google Sheets to Your Automation Tool

Open your automation tool of choice. In n8n, for example, you would:

  1. Create a new workflow and add a Schedule Trigger (e.g., runs every day at 7:00 AM)
  2. Add a Google Sheets node — authenticate with your Google account and select your spreadsheet and sheet tab
  3. Set a filter to only retrieve rows where Column E equals Ready

This means the workflow wakes up each morning, scans your sheet, and picks up only the posts that are ready to go. Everything else is ignored.

Step 3: Create the WordPress Post via REST API

Next, add an HTTP Request node (or a dedicated WordPress node if your tool has one) configured as follows:

  • Method: POST
  • URL: https://yoursite.com/wp-json/wp/v2/posts
  • Authentication: Basic Auth using your WordPress username and Application Password
  • Body (JSON): Map the sheet columns to the WordPress fields — title, content, categories, tags, status, and date

Here's a simplified example of the JSON body your node would send:

{

Turbotic makes it easy to implement these workflows without any coding.

🇩🇪 Deutsch

Schluss mit manuellem Kopieren und Einfügen

Wer seinen Redaktionsplan in Google Sheets verwaltet und jeden Beitrag anschließend manuell in WordPress einpflegt, kennt das Problem: Es kostet Zeit, ist fehleranfällig und sorgt immer wieder für kleine, aber ärgerliche Pannen. Ein falscher Titel hier, eine vergessene Kategorie da – und schon leidet die SEO-Konsistenz.

Die gute Nachricht: Dieser gesamte Ablauf lässt sich automatisieren. In dieser Schritt-für-Schritt-Anleitung erfährst du, wie du Google Sheets mit WordPress verbindest, sodass dein Team nur noch die Tabelle ausfüllt – und die Beiträge sich von selbst veröffentlichen.

Was du vorher brauchst

  • Ein Google Sheet als Redaktionskalender
  • Eine WordPress-Website mit aktiviertem REST API (standardmäßig aktiviert)
  • Ein Automatisierungstool wie n8n, Make oder Zapier
  • Ein Anwendungspasswort aus deinem WordPress-Benutzerprofil

Programmierkenntnisse sind nicht erforderlich. Dieser No-Code-Workflow lässt sich an einem Nachmittag einrichten – auch ohne technisches Vorwissen.

Schritt 1: Das Google Sheet richtig aufbauen

Damit die Automatisierung weiß, was sie lesen soll, brauchst du klar definierte Spalten. Hier eine bewährte Struktur:

  • Spalte A – Titel: Die Überschrift des Beitrags
  • Spalte B – Inhalt: Der vollständige Beitragstext (einfaches HTML ist möglich)
  • Spalte C – Kategorie: Name oder ID der WordPress-Kategorie
  • Spalte D – Veröffentlichungsdatum: Format: JJJJ-MM-TT
  • Spalte E – Status: Werte wie Bereit, Entwurf oder Veröffentlicht
  • Spalte F – Tags: Kommagetrennte Liste

Die Statusspalte ist entscheidend. Die Automatisierung verarbeitet nur Zeilen mit dem Status Bereit und aktualisiert diese nach der Veröffentlichung auf Veröffentlicht – so werden Dopplungen zuverlässig verhindert.

Schritt 2: Google Sheets mit dem Automatisierungstool verbinden

Öffne dein Automatisierungstool. In n8n geht das zum Beispiel so:

  1. Erstelle einen neuen Workflow und füge einen Schedule-Trigger hinzu (z. B. täglich um 7:00 Uhr)
  2. Füge einen Google-Sheets-Node hinzu – verbinde dein Google-Konto und wähle die entsprechende Tabelle aus
  3. Setze einen Filter, der nur Zeilen abruft, in denen Spalte E den Wert Bereit hat

Der Workflow startet jeden Morgen, prüft die Tabelle und verarbeitet ausschließlich die Beiträge, die wirklich fertig sind. Alle anderen Zeilen werden ignoriert.

Schritt 3: Den WordPress-Beitrag per REST API erstellen

Füge als nächstes einen HTTP-Request-Node (oder einen dedizierten WordPress-Node) mit diesen Einstellungen hinzu:

  • Methode: POST
  • URL: https://deinedomain.de/wp-json/wp/v2/posts
  • Authentifizierung: Basic Auth mit WordPress-Benutzername und Anwendungspasswort
  • Body (JSON): Ordne die Tabellenspalten den WordPress-Feldern zu – Titel, Inhalt, Kategorien, Tags, Status und Datum

Ein vereinfachtes Beispiel für den JSON-Body sieht so aus:

{

Mit Turbotic lassen sich solche Workflows schnell und ohne Programmierkenntnisse umsetzen.

Ready to automate?

Automatisierung ohne Entwickler.

Fertige n8n Workflows für KMU — sofort einsatzbereit.

Zu den Templates →