Home / Topics / Social media calendar template
Guide

Free social media calendar template

A simple social media calendar template you can open in Google Sheets or Excel. It has 13 columns, 4 sample rows and no sign up.

A week of posts in the Postozo social media calendar, the app version of this template, close up
A week of posts in the Postozo social media calendar, the app version of this template

Download the social media calendar template

This social media content calendar template is 1 CSV file. CSV opens in Google Sheets, Excel, Numbers and LibreOffice. Each row is 1 post on 1 channel. Download the template (CSV).

The 4 sample rows are for a made-up bakery. Delete them when you start. They are there to show how each column is used.

What each column is for

ColumnWhat to write
Date and TimeWhen the post should go out, in your own time zone. Use the date format your sheet understands.
ChannelThe network and account, for example "Instagram" or "LinkedIn Page". 1 channel per row.
Client or brandUseful for agencies. Filter by it to see 1 client at a time.
Post typePhoto, carousel, video, Reel, Story, text, offer or event.
TopicA short label, like "New bread". Rows with the same topic are 1 idea spread over channels.
Post textThe caption or post. Keep the version for each channel on its own row.
Image or videoThe file name or a link to the file.
Link, Hashtags, First commentAnything that goes with the post. Many people put hashtags and links in the first comment.
StatusIdea, Draft, Waiting for approval, Scheduled or Published.
Approved byWho said yes, so there is no doubt later.

How to fill a week in 30 minutes

  1. Pick your posting days and times first, for example Monday, Wednesday and Friday at 09:00. Fill the Date and Time columns before you write anything.
  2. Write 1 topic per slot. A simple mix is 1 useful tip, 1 post about your product or service, and 1 post about people or behind the scenes.
  3. Copy each topic row for every channel it should go to, then change the text for each network. X and Bluesky need short text. LinkedIn and Facebook have room for more.
  4. Check the length with the free character counter, add the files, and set Status to Draft.
  5. Send the sheet to whoever approves, then change Status to Scheduled once you have put the posts into a scheduler or the network's own app.

Weekly social media content calendar example

DayTopicChannels
MondayTip: how to keep bread freshFacebook, Instagram
WednesdayOffer: weekday discountGoogle Business Profile, Facebook
FridayBehind the scenes: 5 am bakeInstagram Reel, TikTok
SaturdayCustomer question of the weekInstagram Story, Threads

This is an example to show the format. The bakery is made up.

When a spreadsheet stops working

A social media calendar template in a spreadsheet is fine for 1 person and a few channels. It gets hard when:

  • You copy text from the sheet into 5 apps every day.
  • A client approves in email, and the sheet does not show it.
  • You forget to post because nobody reminds you.
  • A network rejects the post at the last minute because a picture has the wrong shape.
  • You manage more than 1 brand and the sheet has 300 rows.

At that point a scheduler does the same job with fewer steps. In Postozo, the social media calendar has the same columns built in: channel, customer, status, first comment and approval. Posts go out on their own at the set time. The post editor checks each network's rules before saving, and clients approve from a review link. See how teams set up an approval workflow.

Move the template into Postozo

Postozo imports posts from a CSV file with bulk upload, up to 500 posts at a time. Its columns are date, text, channels, media_url, tags and first_comment, so copy your rows across with 4 small changes: join Date and Time into 1 date like 2026-10-05 09:00, put the post text in text, write the channel names as they appear in Postozo in channels, and use direct links to your pictures in media_url. Every line is checked against each network's rules before anything is created, and lines with a problem are listed with the fix. If you prefer to work post by post, paste each topic into the post editor, pick all its channels, and let the AI assistant fit the text to each network.

From the template to Postozo in 4 steps

The template and Postozo's bulk upload use different column names, so copy across like this:

Template columnBulk upload columnWhat to do
Date and TimedateJoin them: 2026-10-05 09:00
ChannelchannelsUse the channel name as it shows in Postozo; separate several with |
Post texttextCopy as it is; line breaks are kept
Image or videomedia_urlUse a direct link to each file, separated by |
Hashtagstext or first_commentAdd them to the text, or put them in the first comment
First commentfirst_commentCopy as it is
Client, Post type, Topic, Status, Approved byNot neededLeave them out; customers, approval and status live in Postozo

Save the sheet as CSV, open bulk upload next to Create Post, pick the default channels and Save as drafts, and check the result. Every line is checked against each network's rules before anything is created, so a missing Instagram picture or a date that could be read 2 ways is caught before it becomes a failed post.

Plan by theme, not by day

A calendar is easier to fill when each day has a theme. A small business might use 4: something useful (a tip or a how-to), something human (people, behind the scenes), something to buy (an offer, a new product), and something from customers (a review, a question, a photo they shared). Give each theme a fixed day and you only have to decide the topic, not the type of post. Leave 1 slot a week open for news.

Extra columns for agencies

Agencies running several clients from 1 sheet should add a column for the client, 1 for who approves, and 1 for the date the client said yes. In Postozo those are built in: each client is a customer, approval is on or off per customer, and the post keeps who approved it and when. Clients answer from a review link without an account, and a client report at the end of the month shows what went out and how it did.

How far ahead to plan

WhoPlan aheadWhy
A shop or cafe1 to 2 weeksOffers and stock change often
A clinic, gym or salon2 to 4 weeksMost topics are seasonal and known in advance
An agency, per client1 monthClients need time to approve
A brand with launches1 to 3 months for launches, 2 weeks for the restLaunch posts need design and approval time

Whatever you choose, review the next 2 weeks every Monday. Move posts that no longer fit, and fill the gaps from your list of evergreen topics.

FAQ

Questions

Something else? Email support@postozo.com and a person will answer.

Is this social media calendar template free?

Yes. Download the CSV and use it as you like. You do not need a Postozo account.

Does it work in Google Sheets and Excel?

Yes. CSV opens in Google Sheets (File, Import), Excel, Numbers and LibreOffice.

How do I make a social media calendar template?

Pick your channels and posting times, then make 1 row per post with the date, channel, text, media and status. Or download ours and delete the sample rows.

How do I make a social media calendar in Excel?

Open the CSV in Excel and save it as an Excel file. Turn on filters for the Channel, Client and Status columns, so you can see 1 channel, 1 client or all drafts at a time.

What should a social media content calendar include?

At least the date, time, channel, post text, media, status and who approved it. Agencies should add a client column.

Can I import this CSV into Postozo?

Yes, after a small change. Bulk upload reads the columns date, text, channels, media_url, tags and first_comment, so join Date and Time into 1 date column and rename the others. Up to 500 posts per file.

How far ahead should I plan?

Most small teams plan 1 to 2 weeks ahead and leave room for news. Plan big launches and holidays a month ahead.

Can I import the template into Postozo?

Yes, with bulk upload. Join Date and Time into 1 date column and rename the others as shown on this page. Up to 500 posts per file.

Can I share the calendar with a client?

In a spreadsheet, share the file. In Postozo, send a review link for each post, or invite the client as a Client member who sees only their own brand.

Start planning your posts today

Create your account and publish your first post in 5 minutes.

7 day free trial. No card needed.