Reddit + Google Sheets: LinkedIn ideas, organized
You find a great Reddit thread, grab a few quotes, and tell yourself you’ll “turn it into a LinkedIn post later.” Later rarely happens. The tab gets closed, the insight gets lost, and your content calendar stays empty.
This Reddit LinkedIn ideas automation hits marketers first, honestly. But founders trying to stay visible and content strategists building a repeatable pipeline deal with the same mess. The outcome is simple: you end up with a clean Google Sheet full of usable LinkedIn angles, backed by real sources.
You’ll see how the workflow pulls posts and comments, uses AI to extract pain points, and then writes post ideas you can actually publish (or hand to a writer).
How This Automation Works
Here’s the complete workflow you’ll be setting up:
n8n Workflow Template: Reddit + Google Sheets: LinkedIn ideas, organized
flowchart LR
subgraph sg0["On form submission Flow"]
direction LR
n0@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model", pos: "b", h: 48 }
n1@{ icon: "mdi:database", form: "rounded", label: "Output The Results", pos: "b", h: 48 }
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/reddit.svg' width='40' height='40' /></div><br/>Get Posts"]
n3["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/reddit.svg' width='40' height='40' /></div><br/>Get many comments in a post"]
n4@{ icon: "mdi:swap-vertical", form: "rounded", label: "Loop Over Items", pos: "b", h: 48 }
n5@{ icon: "mdi:robot", form: "rounded", label: "Suggest post topics", pos: "b", h: 48 }
n6@{ icon: "mdi:robot", form: "rounded", label: "Generate insights", pos: "b", h: 48 }
n7@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Filter only posts with comme..", pos: "b", h: 48 }
n8@{ icon: "mdi:cog", form: "rounded", label: "Aggregate comments to single..", pos: "b", h: 48 }
n9@{ icon: "mdi:swap-vertical", form: "rounded", label: "Construct post with comment ..", pos: "b", h: 48 }
n10["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/merge.svg' width='40' height='40' /></div><br/>Merge insights with post con.."]
n11@{ icon: "mdi:swap-vertical", form: "rounded", label: "Construct post ideas", pos: "b", h: 48 }
n12@{ icon: "mdi:swap-vertical", form: "rounded", label: "Construct insights", pos: "b", h: 48 }
n13["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/merge.svg' width='40' height='40' /></div><br/>Merge insights and post sugg.."]
n14["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/form.svg' width='40' height='40' /></div><br/>On form submission"]
n15@{ icon: "mdi:database", form: "rounded", label: "Create spreadsheet", pos: "b", h: 48 }
n16@{ icon: "mdi:swap-vertical", form: "rounded", label: "Prepare output columns", pos: "b", h: 48 }
n2 --> n7
n4 --> n3
n6 --> n10
n0 -.-> n6
n12 --> n13
n15 --> n2
n14 --> n15
n1 --> n4
n5 --> n11
n11 --> n13
n16 --> n1
n3 --> n8
n7 --> n4
n8 --> n9
n9 --> n6
n9 --> n10
n13 --> n16
n10 --> n5
n10 --> n12
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n14 trigger
class n5,n6 ai
class n0 aiModel
class n7 decision
class n1,n15 database
classDef customIcon fill:none,stroke:none
class n2,n3,n10,n13,n14 customIcon
Why This Matters: Turning “Reddit Gold” Into a Real Backlog
Reddit is full of blunt, specific language your buyers actually use. The problem is that collecting it is tedious, and turning it into LinkedIn content is even worse. You end up skimming threads, copying chunks into notes, losing the link, and trying to remember why it mattered in the first place. Then you sit down to write and the moment is gone. What was a clear pain point in the thread becomes a vague, generic post that doesn’t land.
The friction compounds. Here’s where it usually breaks down.
- You spend about 10 minutes per thread just gathering context, and that’s before you write anything.
- When sources aren’t saved, you can’t sanity-check your angle later, so you second-guess and stall.
- Comments hold the best insights, but reading 50+ replies manually is a time sink you keep avoiding.
- Ideas live in random places (tabs, docs, DMs), which makes it hard to build a repeatable content system.
What You’ll Build: Reddit Threads → LinkedIn Ideas in Google Sheets
This workflow gives you a simple input (a subreddit and a keyword) and turns it into a structured content backlog. It starts from a form submission in n8n, creates a fresh Google Sheet for the run, and then pulls matching Reddit posts. From there, it filters to keep posts that actually have comments worth reading, batches through them, and fetches the comment threads. Next, AI extracts the real pain points and patterns hiding inside the messy conversation, then proposes LinkedIn-ready topic angles with headlines, hooks, and CTAs tailored for a professional audience. Finally, everything gets appended into Google Sheets so you can review, edit, and ship.
The workflow begins when you submit your subreddit + keyword. Reddit data gets collected and cleaned into a single “post + comments” bundle. OpenAI then turns that bundle into insights and LinkedIn topic ideas, and Google Sheets becomes the place your backlog lives.
What You’re Building
| What Gets Automated | What You’ll Achieve |
|---|---|
|
|
Expected Results
Say you research content twice a week and review about 6 Reddit posts each session. Manually, if you spend roughly 10 minutes finding a solid post, 10 minutes scanning comments, and another 10 minutes drafting an angle, that’s about 3 hours per session. With this workflow, you submit one form in a minute, let the run process in the background, then spend about 30 minutes reviewing the best rows in Google Sheets. That’s roughly 5 hours back each week, with a better paper trail.
Before You Start
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Reddit for fetching posts and comments via API.
- Google Sheets to store ideas in a shared backlog.
- OpenAI API key (get it from your OpenAI dashboard under API keys)
Skill level: Beginner. You’ll connect accounts, paste an API key, and tweak a couple of fields like subreddit and keyword.
Want someone to build this for you? Talk to an automation expert (free 15-minute consultation).
Step by Step
A form submission kicks things off. You enter a subreddit and a keyword (for example, “r/SaaS” + “onboarding”). That input becomes the “brief” for the run.
Reddit posts get collected, then trimmed down. The workflow retrieves posts that match your criteria, filters for posts that actually have comments, then processes them in batches so the run stays stable even when there’s a lot of data.
Comments are aggregated into one readable bundle. Instead of sending scattered replies into an AI prompt, it assembles a single post-with-comments text block, which gives the model context and makes the insights less generic.
OpenAI generates insights and LinkedIn angles. One pass derives pain points and patterns. Another pass proposes LinkedIn topics with headlines, hooks, and CTAs that fit a professional feed.
Google Sheets becomes your content backlog. The workflow maps the outputs into consistent columns and appends them as new rows, so you can sort, tag, and assign them later.
You can easily modify the subreddit/keyword input to match a niche campaign, or adjust the AI prompt to fit your brand voice. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Form Trigger
Capture the subreddit and keyword inputs that kick off the pipeline.
- Add the Form Submission Trigger node.
- Set Form Title to
Post ideas generation. - Add form fields for Subreddit and What to search for in the subreddit, with Subreddit marked as required.
- Ensure the trigger is connected to Create Google Sheet.
Step 2: Connect Google Sheets
Create a new spreadsheet for each run and prepare it for appended results.
- Add the Create Google Sheet node.
- Set Resource to
spreadsheet. - Set Title to
=post_ideas_{{ $json.Subreddit }}_{{ $json['What to search for in the subreddit'] }}_{{$now.format('yyyy_MM_dd_HH_mm_ss')}}. - Credential Required: Connect your googleSheetsOAuth2Api credentials.
Subreddit and What to search for in the subreddit exactly.Step 3: Retrieve and Filter Reddit Posts
Search Reddit and keep only posts that have comments to analyze.
- Add Retrieve Reddit Posts and connect it after Create Google Sheet.
- Set Operation to
search. - Set Subreddit to
={{ $('Form Submission Trigger').item.json.Subreddit }}. - Set Keyword to
={{ $('Form Submission Trigger').item.json['What to search for in the subreddit'] }}. - Credential Required: Connect your redditOAuth2Api credentials.
- Add Filter Posts With Comments and configure the condition: Left Value
={{ $json.num_comments }}, Operationgt, Right Value0. - Connect Filter Posts With Comments to Batch Through Posts.
Step 4: Fetch Comments and Assemble Post Context
Batch through posts, collect comments, and build a combined payload for analysis.
- Add Batch Through Posts to control post iteration.
- Add Fetch Post Comments with Resource set to
postCommentand Operation set togetAll. - Set Post ID to
={{ $json.id }}and Subreddit to={{ $json.subreddit }}. - Credential Required: Connect your redditOAuth2Api credentials.
- Add Aggregate Comment Text and aggregate the body field.
- Add Assemble Post With Comments and map fields: commentText to
={{ $json.body }}, postId to={{$("Batch Through Posts").item.json.id}}, and postContent to={{$("Batch Through Posts").item.json.selftext}}.
Step 5: Set Up AI Analysis and Topic Generation
Generate structured insights and LinkedIn topic ideas from the combined Reddit content.
- Add the OpenAI Chat Engine node with model
chatgpt-4o-latestand connect it as the language model for Derive Content Insights. - Credential Required: Connect your openAiApi credentials in OpenAI Chat Engine (the agent uses this parent model).
- In Derive Content Insights, set Text to the full prompt shown and keep Prompt Type as
define. - Add Combine Insights With Source with Mode set to
combineand Combine By set tocombineByPosition. - Combine Insights With Source outputs to both Propose LinkedIn Topics and Map Insight Output in parallel.
- Add Propose LinkedIn Topics and set the prompt message content to the provided Markdown instruction block.
- Credential Required: Connect your openAiApi credentials in Propose LinkedIn Topics.
- Add Map Topic Ideas and set postIdeas to
={{ $json.message.content }}. - Add Map Insight Output and map contentAnalysis, commentText, postId, and postContent to their respective expressions:
={{ $json.output }},={{ $json.commentText }},={{ $json.postId }}, and={{ $json.postContent }}. - Add Merge Ideas And Insights with Mode set to
combineand Combine By set tocombineByPosition.
Step 6: Configure Output to Google Sheets
Prepare columns and append each enriched result into the newly created spreadsheet.
- Add Prepare Sheet Columns and set the fields: Post Content to
={{ $json.postContent }}, Comments to={{ $json.commentText.join('\n\n\n\n--------\n\n\n') }}, Insights to={{ $json.contentAnalysis }}, and Linkedin post ideas to={{ $json.postIdeas }}. - Add Append Results To Sheet with Operation set to
appendand Sheet Name set toSheet1. - Set Document ID to
={{ $('Create Google Sheet').item.json.spreadsheetUrl }}. - Credential Required: Connect your googleSheetsOAuth2Api credentials.
Step 7: Test and Activate Your Workflow
Run a manual test to validate the full pipeline, then enable it for production use.
- Click Execute Workflow and submit a test form in Form Submission Trigger (e.g., Subreddit
marketing, search termlead generation). - Confirm Create Google Sheet creates a new spreadsheet and that Append Results To Sheet writes rows with Post Content, Comments, Insights, and Linkedin post ideas.
- Verify AI outputs in Derive Content Insights and Propose LinkedIn Topics appear as structured Markdown in the sheet.
- Toggle the workflow to Active to start processing live submissions.
Troubleshooting Tips
- Reddit credentials can expire or need specific permissions. If things break, check your Reddit app settings (client ID/secret and scopes) first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.
Quick Answers
About 30 minutes if you already have your Reddit, OpenAI, and Google credentials ready.
No. You’ll mostly connect accounts and edit the prompt and sheet columns to match what you want to capture.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API costs, which are usually a few cents per run depending on how many posts and comments you process.
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
Yes, and you should. You can change the form inputs to accept multiple keywords, then adjust the “Retrieve Reddit Posts” step to run once per keyword. Most teams also customize the OpenAI prompt in the “Derive Content Insights” and “Propose LinkedIn Topics” nodes to match their brand voice, their ICP, and the type of post they want (story, checklist, contrarian take).
Usually it’s an OAuth issue: the Reddit app is misconfigured, scopes aren’t approved, or the token expired. Re-check the Reddit developer app settings, then reconnect the credential inside n8n. If it works for a few posts and then fails, you may be hitting rate limits or pulling from a subreddit that blocks certain API access.
It depends on how many posts you ask for and how long the comment threads are, but most teams run it on 10–30 posts at a time without issues.
For this workflow, n8n is usually the better fit because it’s comfortable with multi-step logic like batching, merging, and shaping AI prompts, and you can self-host when volume grows. Zapier and Make can work, but this kind of “collect → enrich → write → store” flow often turns into lots of separate Zaps/scenarios that are harder to debug. If you want to keep tight control over prompts and data mapping, n8n feels less restrictive. The practical difference is maintenance: when Reddit or your prompt changes, you’ll fix it once inside one workflow. Talk to an automation expert if you want help choosing.
You don’t need more content hacks. You need a system that reliably turns real conversations into publishable ideas, stored where your team can actually use them.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.