Repurpose Social Posts Using ChatGPT
Automatically tweak your posts before publishing them on another social platform.

I write a lot of social posts, particularly on LinkedIn. I also publish on Threads and (more recently) Bluesky.
Managing content across social platforms is hard. How much can one person write??
I know some people copy/paste across platforms. Personally, I'm not a fan of that. If I follow the person on two platforms, I see nearly identical content. Plus, I think each platform has its own vibe – so what works for one may not work for another.
I asked myself: how can I create unique content across platforms, without doubling (or tripling) my work?
The answer, of course, is automation.
LinkedIn is my starting point. When I write a new post for LinkedIn, it automatically runs through ChatGPT. In ChatGPT, I have instructions on tweaking the post for Threads. The modified post is then sent back to my social media scheduling platform (Buffer). When I'm ready to schedule posts for Buffer, I have a huge queue of posts waiting for me.
I do not automatically publish the posts to Threads. The modified version still needs to be edited. Even with instructions and examples of my style and tone, they still sound a bit "off" from how I would write. But it's far easier (and faster) to edit the ChatGPT version of the post than it would be to edit the original LinkedIn post.
Here's how this works.

If you're not familiar with setting up automation in Zapier, start with this video.
Step 1: Start with a published post on platform #1
To kick off this automation, you'll need a social media scheduling platform. Zapier will pick up on any published posts to your main platform (in my case, LinkedIn).
I use Buffer to schedule posts, and the trigger event is New Sent Item.
I could also use New Item Added to Queue (when I first schedule the item). But that would kick off the automation before the post actually publishes. In some cases, I end up modifying the post or removing it entirely. I'd rather only use social posts that were actually sent.

Next, you'll select the specific social profile you want to use. In my case, my LinkedIn profile.

Step 2: Run the social post through ChatGPT
Next, you'll use ChatGPT to tweak the published social post. In Zapier, you'll select Conversation With Assistant.

In the ChatGPT conversation, you'll need to insert your published post from Step 1 in the "Message" field.
For Buffer, that's the text of the post. Click on the "+" and then select the text of your published post.

Once the text has been added, it will look like this in your "Message" field.

ChatGPT instructions:
Here's what I include in the "Message" field in Zapier.
This is my latest post for LinkedIn:
[inserted post from step 1]
This post should be rewritten for the social platform Threads.
ABOUT ME:
[A few paragraphs about who I am, what I do, and my target audience.]
EXAMPLES:
[A few examples of posts I've written for Threads.]
INSTRUCTIONS:
From my latest LinkedIn post above, you should create one reformatted post for Threads.
Threads has a character limit of 500 characters, so the LinkedIn post should be shortened if necessary.
The post should maintain my voice, but also the format should change so that it's appropriate for Threads. Use short sentences and simple language. The format should be inspirational and motivational and not like a tweet-bro.
Do not include hashtags or emojis.
Return only the Threads post and nothing else.
The last line – "Return only the Threads post and nothing else" – is really important for your next step. If you don't include this, your output will be "Certainly! Here's the Threads post you requested" (or something like that). That's additional editing you'd need to do in the next step.
Step 3: Schedule your reworked social post
In this last step, you're going to send the rewritten post from ChatGPT back to your social media scheduling app.
In Buffer, I use Create Idea.
I could send this directly to my Threads profile in Buffer, but ChatGPT can't count. Sometimes, the generated posts end up being longer than the 500-character limit in Threads. Since Buffer enforces this limit, it causes problems.
So instead, I send the posts to the Create Idea space in Buffer, which is just a place to store ideas for future posts – for any channel.

In the configuration, I can give the post an optional "Title". I use a title that indicates that this idea came from OpenAI (versus some other ideas that are added to the Create space).

You'll notice that Zapier says "Possible Zap loop detected." That's because I'm starting with Buffer and ending with Buffer. Loops are bad because they can cause issues in your Zap. In this case, it's not an actual loop, because I'm doing two different things (starting with a Sent Item and ending with a Create Idea).
In the "Text" field, I add the Full Response from the ChatGPT step (Step 2).

Lastly, I can add "Tags" and a "Group" to the Idea. I use tags to help me sort my Ideas. I have a Group set up specifically for Threads, so I know what channel I want to publish to.

That's it! When I work on my content for Threads, I'll edit the ideas in the Threads group in the Create space. Then I schedule them to publish.
Additional resources:
- How to Integrate ChatGPT Into Your Workflows
- How to Manage an Omnipresent Social Media Strategy
- Hate Marketing Yourself on LinkedIn? Here Are Ways to Make It Less Cringe
I created the screenshots in this tutorial using Scribe – it's one of my favorite tools. You can check out Scribe here [affiliate link].