{"id":31,"date":"2026-10-23T12:27:27","date_gmt":"2026-10-23T11:27:27","guid":{"rendered":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/"},"modified":"2026-10-23T12:27:27","modified_gmt":"2026-10-23T11:27:27","slug":"seo-content-calendar-template","status":"publish","type":"post","link":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/","title":{"rendered":"SEO content calendar template: columns, examples and how to use it"},"content":{"rendered":"<p>An SEO content calendar template is a spreadsheet that links every planned article to a target keyword, search intent, topic cluster, owner, publish date and status, then tracks results afterwards. Copy the columns below into Google Sheets or Excel, fill 30 days of posts, and review performance in Search Console.<\/p>\n<div class=\"key-facts\">\n<p><strong>At a glance<\/strong><\/p>\n<ul>\n<li>Last updated: October 2026.<\/li>\n<li>SEO usually takes three to six months to build, so regular publishing matters more than one perfect post.<\/li>\n<li>The SEO-specific templates ranking and cited by ChatGPT track target keyword, search intent, topic cluster, funnel stage, owner and status (<a href=\"https:\/\/seoscout.co\/templates\/content-calendar-template\">SEOScout<\/a>).<\/li>\n<li>A full SEO planning workbook can include eight worksheets: annual calendar, monthly planner, content pipeline, keyword mapping and performance tracking (<a href=\"https:\/\/pikaseo.com\/templates\/content-calendar-template\">PikaSEO<\/a>).<\/li>\n<li>Good calendars assign a topic owner, draft due date, QA reviewer and publish owner to each slot (<a href=\"https:\/\/betterblogai.com\/guide\/seo-content-calendar-template\">Better Blog AI<\/a>).<\/li>\n<li>Rank Otter plans are priced by articles a month: Growth is \u00a329 + VAT for 30 articles, and the first article is free with no card.<\/li>\n<\/ul>\n<\/div>\n<h2>What is an SEO content calendar template?<\/h2>\n<p>It is a spreadsheet that plans each article around a keyword and search intent rather than just a date, so every post has a job to do in search. A date tells you when something goes live. Our kind of calendar also tells you why it exists, who it is for and how you will judge it.<\/p>\n<p>A social or general marketing calendar usually tracks channels, captions, campaigns and posting times. That is useful, but it says little about what people type into Google. The SEO version adds the search side: the keyword, the intent behind it, the topic cluster the page belongs to and the internal links it needs.<\/p>\n<p>The template below is plain text and tables. You can copy it straight into Google Sheets or Excel. There is no signup and nothing to download. We keep it simple on purpose, because a calendar nobody updates is worse than none.<\/p>\n<p>Most results for this search tend to be generic marketing or social calendars with little SEO structure. A few SEO-specific ones do exist, such as the <a href=\"https:\/\/seoscout.co\/templates\/content-calendar-template\">SEOScout template<\/a>. They lean on the same ideas: keyword, intent, cluster, owner and status. If you want a broader look at general layouts, <a href=\"https:\/\/zapier.com\/blog\/content-calendar-template\">Zapier has a round-up of free content calendar templates<\/a>.<\/p>\n<h2>What columns should an SEO content calendar template include?<\/h2>\n<p>At minimum: publish date, working title, target keyword, search intent, topic cluster, funnel stage, owner, status, URL and a performance metric. Paste these into row one of your sheet and keep one article per row.<\/p>\n<h3>Column reference<\/h3>\n<table>\n<thead>\n<tr>\n<th>Column<\/th>\n<th>Purpose<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Publish date<\/td>\n<td>The day the article goes live. Sort by this column.<\/td>\n<\/tr>\n<tr>\n<td>Working title<\/td>\n<td>A clear draft title, which you can change later.<\/td>\n<\/tr>\n<tr>\n<td>Target keyword<\/td>\n<td>The main phrase the page should rank for. One per page.<\/td>\n<\/tr>\n<tr>\n<td>Search intent<\/td>\n<td>What the searcher wants: learn, compare, buy or find a local business.<\/td>\n<\/tr>\n<tr>\n<td>Topic cluster<\/td>\n<td>The group of related articles this one supports.<\/td>\n<\/tr>\n<tr>\n<td>Funnel stage<\/td>\n<td>Awareness, consideration or decision.<\/td>\n<\/tr>\n<tr>\n<td>Owner<\/td>\n<td>The person responsible for getting it written.<\/td>\n<\/tr>\n<tr>\n<td>Status<\/td>\n<td>Where it is now: idea, briefed, drafted, approved or published.<\/td>\n<\/tr>\n<tr>\n<td>URL<\/td>\n<td>The live address, added once published.<\/td>\n<\/tr>\n<tr>\n<td>Performance metric<\/td>\n<td>Clicks, impressions or average position from Search Console.<\/td>\n<\/tr>\n<tr>\n<td>Internal links to add<\/td>\n<td>Which existing pages to link to and from.<\/td>\n<\/tr>\n<tr>\n<td>Refresh date<\/td>\n<td>When to review and update the page.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>When you work with a team, add a draft due date, a QA reviewer and a publish owner. <a href=\"https:\/\/betterblogai.com\/guide\/seo-content-calendar-template\">Better Blog AI makes the same point<\/a>: each slot should have named people, not just a name on the whole calendar.<\/p>\n<h3>Status key<\/h3>\n<p>Keep the status list short so everyone uses it the same way: idea, briefed, drafted, approved, published. In Google Sheets, a drop-down list on that column stops people inventing new labels.<\/p>\n<h3>Starter rows to copy<\/h3>\n<p>These are example topics for a fictional Leeds plumber. Swap in your own.<\/p>\n<table>\n<thead>\n<tr>\n<th>Publish date<\/th>\n<th>Working title<\/th>\n<th>Target keyword<\/th>\n<th>Intent<\/th>\n<th>Cluster<\/th>\n<th>Funnel<\/th>\n<th>Owner<\/th>\n<th>Status<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>05\/11\/2026<\/td>\n<td>Boiler servicing: what happens during a visit<\/td>\n<td>boiler service what to expect<\/td>\n<td>Learn<\/td>\n<td>Boilers<\/td>\n<td>Awareness<\/td>\n<td>Sam<\/td>\n<td>Briefed<\/td>\n<\/tr>\n<tr>\n<td>12\/11\/2026<\/td>\n<td>Why is my boiler losing pressure?<\/td>\n<td>boiler losing pressure<\/td>\n<td>Learn<\/td>\n<td>Boilers<\/td>\n<td>Awareness<\/td>\n<td>Sam<\/td>\n<td>Idea<\/td>\n<\/tr>\n<tr>\n<td>19\/11\/2026<\/td>\n<td>Boiler repair or replace: how to decide<\/td>\n<td>repair or replace boiler<\/td>\n<td>Compare<\/td>\n<td>Boilers<\/td>\n<td>Consideration<\/td>\n<td>Priya<\/td>\n<td>Idea<\/td>\n<\/tr>\n<tr>\n<td>26\/11\/2026<\/td>\n<td>Emergency plumber in Leeds: what to do first<\/td>\n<td>emergency plumber leeds<\/td>\n<td>Find local<\/td>\n<td>Local services<\/td>\n<td>Decision<\/td>\n<td>Priya<\/td>\n<td>Idea<\/td>\n<\/tr>\n<tr>\n<td>03\/12\/2026<\/td>\n<td>How to bleed a radiator<\/td>\n<td>how to bleed a radiator<\/td>\n<td>Learn<\/td>\n<td>Heating<\/td>\n<td>Awareness<\/td>\n<td>Sam<\/td>\n<td>Idea<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Notice that the first three rows share a cluster. That is deliberate. They support each other through internal links, which we cover next.<\/p>\n<h2>How do you fill in an SEO content calendar step by step?<\/h2>\n<p>Start with the questions your customers actually ask, map each to a keyword and intent, group them into clusters, then assign dates and owners. Work in that order, because dates chosen first tend to force weak topics.<\/p>\n<ol>\n<li><strong>List customer questions.<\/strong> Go through emails, calls, quotes and messages. Write each question as the customer phrased it.<\/li>\n<li><strong>Check what already ranks on Google.<\/strong> Search each question and read the top results. Note what they cover. Note what they miss.<\/li>\n<li><strong>Add a keyword and intent.<\/strong> Choose one main phrase per article and decide whether the searcher wants to learn, compare, buy or find someone nearby.<\/li>\n<li><strong>Group into clusters.<\/strong> Put related questions together. Choose one broad hub article and several narrower supporting articles.<\/li>\n<li><strong>Set dates.<\/strong> Publish the hub first or alongside the first supporting pieces, then add support articles on a steady schedule.<\/li>\n<li><strong>Assign owners and checks.<\/strong> Name who writes, who reviews and who publishes. Add the internal links to include.<\/li>\n<\/ol>\n<h3>Write about the questions you are actually asked<\/h3>\n<p>This is the advice we give customers most often. Your own enquiries are the best topic list you have, because they come from people who already want what you sell. If three customers asked the same thing this month, that is a calendar row.<\/p>\n<h3>Check the top results before briefing<\/h3>\n<p>Before you brief a writer, read the pages already ranking. Note the questions they answer and the gaps. Your article should cover what they do and add what they leave out, such as a real example from your own work.<\/p>\n<h3>Sequence hubs and supporting articles<\/h3>\n<p>Publish the hub, then each supporting article, and link both ways. In the example above, the boiler repair or replace article could be the hub, with the pressure and servicing articles linking to it. Use the internal links column to record this so it does not get forgotten.<\/p>\n<h2>How often should you publish, and how far ahead should you plan?<\/h2>\n<p>Plan 30 to 90 days ahead and publish on a steady schedule you can sustain, because SEO takes three to six months to build and consistency beats one perfect post. A realistic rhythm you keep up will do more than a burst that stops after a month.<\/p>\n<h3>A simple cadence guide<\/h3>\n<p>We are not going to quote a magic number of posts, as there is no single right one. Choose by how much time and people you have.<\/p>\n<table>\n<thead>\n<tr>\n<th>Set-up<\/th>\n<th>Sensible approach<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Small business, one site<\/td>\n<td>A steady weekly or fortnightly rhythm that one person can keep up alongside the day job.<\/td>\n<\/tr>\n<tr>\n<td>Agency with a few clients<\/td>\n<td>A separate tab per client, each with its own cadence, and one shared overview of deadlines.<\/td>\n<\/tr>\n<tr>\n<td>Multi-client agency<\/td>\n<td>A master sheet with a client column, plus agreed approval steps so nothing waits on one person.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Leave room for refreshes and reactive topics<\/h3>\n<p>Do not fill every slot with new articles. Keep a few gaps for refreshing older pages and for topics that crop up unexpectedly. A refresh date on each published row means old articles are not forgotten.<\/p>\n<h3>Review at 90 days<\/h3>\n<p>Check Google Search Console at the 90-day mark rather than relying on feel. Look at impressions, clicks and average position for each published URL and note them in the performance column. Then decide which clusters to expand and which pages need work.<\/p>\n<h3>Pre-publish QA checklist<\/h3>\n<ul>\n<li>Does the opening answer the search straight away?<\/li>\n<li>Is there one clear target keyword?<\/li>\n<li>Are real photos or real examples included?<\/li>\n<li>Have internal links been added in both directions?<\/li>\n<li>Are the title, meta description and URL checked?<\/li>\n<li>Is the page open to search crawlers and not blocked?<\/li>\n<\/ul>\n<h2>What mistakes ruin an SEO content calendar?<\/h2>\n<p>The common ones are scheduling titles with no cluster, unclear ownership, near-identical location pages and skipping the review. All four are easy to avoid if the sheet has the right columns.<\/p>\n<figure><img class=\"wp-image-30\" src=\"https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/team-reviewing-content-calendar-mistakes.webp\" width=\"1024\" height=\"688\" alt=\"Two colleagues review a printed planning grid with sticky notes on a wooden table, one holding a pen over a row, laptop\" loading=\"lazy\" decoding=\"async\" srcset=\"https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/team-reviewing-content-calendar-mistakes.webp 1024w, https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/team-reviewing-content-calendar-mistakes-300x202.webp 300w, https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/team-reviewing-content-calendar-mistakes-768x516.webp 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Reviewing a printed calendar together helps spot gaps, missing owners and skipped checks before anything is published.<\/figcaption><\/figure>\n<h3>Near-identical town pages<\/h3>\n<p>Never publish near-identical pages for different towns. Google treats them as spam. When you serve several areas, each page needs something genuinely different, such as a real job in that place.<\/p>\n<h3>Stock content over real stories<\/h3>\n<p>Real photos and real job stories beat stock content every time. A column or note for the photo or example you will use means it is planned rather than an afterthought.<\/p>\n<h3>Blocking AI search tools<\/h3>\n<p>Check your robots.txt is not blocking AI search tools. It is a small file that is easy to forget, and a stray rule can keep your pages out of AI answers altogether.<\/p>\n<h3>Decorative planners<\/h3>\n<p>A calendar with lovely colours but no owner and no QA step is just decoration. If a row has no name against it, nobody is responsible. If nothing is reviewed before publishing, mistakes go live. The <a href=\"https:\/\/pikaseo.com\/templates\/content-calendar-template\">PikaSEO workbook<\/a> shows how far planning can stretch with eight worksheets, but you do not need that to start. Owner, status and review are the parts that matter.<\/p>\n<h2>Can you automate an SEO content calendar?<\/h2>\n<p>Yes. Spreadsheets can be linked to publishing tools, or a service can plan, write and publish for you on a schedule you approve. Which suits you depends on how much of the work you want to keep.<\/p>\n<h3>Spreadsheet automation<\/h3>\n<p>To stay hands-on, you can connect Google Sheets to WordPress with automation tools, so a row marked approved creates a draft post. It saves copying and pasting, but you still research, write and check each article yourself.<\/p>\n<h3>How Rank Otter works<\/h3>\n<p>We do the planning and publishing for you. Here is the process:<\/p>\n<ul>\n<li>Enter your website and we analyse it free in about 30 seconds.<\/li>\n<li>Your first article is written free, with no card.<\/li>\n<li>You approve a 30-day plan.<\/li>\n<li>Articles are then researched, written and published on your schedule.<\/li>\n<li>Approve each one or let them publish automatically.<\/li>\n<\/ul>\n<p>Every article is researched from the pages already ranking on Google before a word is written. You choose how much control you want, from approving every article to full autopilot. Details are on our <a href=\"https:\/\/rankotter.ai\/features\">features page<\/a>. Cancelling takes two clicks online.<\/p>\n<h3>Pricing<\/h3>\n<p>Plans are priced in articles a month, not credits or words.<\/p>\n<table>\n<thead>\n<tr>\n<th>Plan<\/th>\n<th>Price<\/th>\n<th>Articles a month<\/th>\n<th>Websites<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Growth<\/td>\n<td>\u00a329 + VAT a month<\/td>\n<td>30<\/td>\n<td>1<\/td>\n<\/tr>\n<tr>\n<td>Pro<\/td>\n<td>\u00a379 + VAT a month<\/td>\n<td>75<\/td>\n<td>3<\/td>\n<\/tr>\n<tr>\n<td>Agency<\/td>\n<td>\u00a3199 + VAT a month<\/td>\n<td>200<\/td>\n<td>10 client websites<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The first article is free with no card needed, and there is a 30-day money-back guarantee on your first payment. Full details are on our <a href=\"https:\/\/rankotter.ai\/pricing\">pricing page<\/a>.<\/p>\n<h3>Results and who builds it<\/h3>\n<p>Results come from your own Google Search Console, not our estimates. PS Website Design Ltd, a UK web and app development agency that has built and looked after websites for UK businesses since 2009, builds and supports Rank Otter. We use it on our own clients&#8217; websites.<\/p>\n<p>Would you like a calendar that fills and publishes itself? Start with the free first article and see what we produce for your site. Get in touch with the Rank Otter team and we will help you get going.<\/p>\n<h2>Frequently asked questions<\/h2>\n<h3>How far ahead should an SEO content calendar be planned?<\/h3>\n<p>Plan 30 to 90 days ahead. That is long enough to build clusters and short enough to adjust after you see early data in Search Console.<\/p>\n<h3>Should an SEO content calendar include content refreshes?<\/h3>\n<p>Yes. A refresh date column and a few free slots for updating older articles will do it. Refreshed pages stay accurate, and you avoid publishing only new content.<\/p>\n<h3>Can one content calendar template work for several client websites?<\/h3>\n<p>Yes. Use one tab per client with the same columns, or a master sheet with a client column. Keep owners and approval steps clear for each site.<\/p>\n<h3>How many blog posts a month should an SEO calendar include?<\/h3>\n<p>There is no single right number. Choose a rhythm you can keep up, because SEO takes three to six months to build and steady publishing matters more than one perfect post.<\/p>\n<h3>What is the best free format: Google Sheets, Excel or Notion?<\/h3>\n<p>Google Sheets and Excel both work well, and the table above pastes into either. Sheets is easier to share with a team. Use whichever your team will actually keep updated.<\/p>\n<h3>How do you measure whether your content calendar is working?<\/h3>\n<p>Use Google Search Console. Record clicks, impressions and average position for each published URL, and review them at 90 days.<\/p>\n<h3>Do I need keyword research before filling the calendar?<\/h3>\n<p>You need at least a target keyword for each row. Start from real customer questions, then check what already ranks on Google to confirm the keyword and the intent behind it.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Copy our SEO content calendar template: the columns to track, example rows, a simple cadence and how to plan 30 days of posts that build organic traffic.<\/p>\n","protected":false},"author":3,"featured_media":29,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[18,19,21,20,8,14],"class_list":["post-31","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-content-planning","tag-content-calendar","tag-content-planning","tag-content-templates","tag-editorial-workflow","tag-keyword-research","tag-seo-strategy"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>SEO content calendar template: free columns and steps<\/title>\n<meta name=\"description\" content=\"Copy our SEO content calendar template: the columns to track, example rows, a simple cadence and how to plan 30 days of posts that build organic traffic.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SEO content calendar template: free columns and steps\" \/>\n<meta property=\"og:description\" content=\"Copy our SEO content calendar template: the columns to track, example rows, a simple cadence and how to plan 30 days of posts that build organic traffic.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/\" \/>\n<meta property=\"og:site_name\" content=\"Rank Otter Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-23T11:27:27+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/seo-content-calendar-planning-desk.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1344\" \/>\n\t<meta property=\"og:image:height\" content=\"752\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Simon Middleton\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Simon Middleton\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/\"},\"author\":{\"name\":\"Simon Middleton\",\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/#\\\/schema\\\/person\\\/d57e4085fc7c90e99086b8e924139b33\"},\"headline\":\"SEO content calendar template: columns, examples and how to use it\",\"datePublished\":\"2026-10-23T11:27:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/\"},\"wordCount\":2190,\"image\":{\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/seo-content-calendar-planning-desk.jpg\",\"keywords\":[\"content calendar\",\"content planning\",\"content templates\",\"editorial workflow\",\"keyword research\",\"SEO strategy\"],\"articleSection\":[\"Content Planning\"],\"inLanguage\":\"en-GB\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/\",\"url\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/\",\"name\":\"SEO content calendar template: free columns and steps\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/seo-content-calendar-planning-desk.jpg\",\"datePublished\":\"2026-10-23T11:27:27+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/#\\\/schema\\\/person\\\/d57e4085fc7c90e99086b8e924139b33\"},\"description\":\"Copy our SEO content calendar template: the columns to track, example rows, a simple cadence and how to plan 30 days of posts that build organic traffic.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/#primaryimage\",\"url\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/seo-content-calendar-planning-desk.jpg\",\"contentUrl\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/seo-content-calendar-planning-desk.jpg\",\"width\":1344,\"height\":752,\"caption\":\"Printed monthly planner grid with coloured sticky notes on a wooden desk beside a laptop, a mug of tea, a notebook and pen\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/seo-content-calendar-template\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SEO content calendar template: columns, examples and how to use it\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/\",\"name\":\"Rank Otter Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/#\\\/schema\\\/person\\\/d57e4085fc7c90e99086b8e924139b33\",\"name\":\"Simon Middleton\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/?s=96&d=mm&r=g\",\"caption\":\"Simon Middleton\"},\"description\":\"Simon has been designing and building web applications since 2003. He runs PS Website Design, a UK web web and app agency, and built RankOtter to grow the websites of the businesses he works with.\",\"url\":\"https:\\\/\\\/rankotter.ai\\\/blog\\\/author\\\/simon-middleton\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SEO content calendar template: free columns and steps","description":"Copy our SEO content calendar template: the columns to track, example rows, a simple cadence and how to plan 30 days of posts that build organic traffic.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/","og_locale":"en_GB","og_type":"article","og_title":"SEO content calendar template: free columns and steps","og_description":"Copy our SEO content calendar template: the columns to track, example rows, a simple cadence and how to plan 30 days of posts that build organic traffic.","og_url":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/","og_site_name":"Rank Otter Blog","article_published_time":"2026-10-23T11:27:27+00:00","og_image":[{"width":1344,"height":752,"url":"https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/seo-content-calendar-planning-desk.jpg","type":"image\/jpeg"}],"author":"Simon Middleton","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Simon Middleton","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/#article","isPartOf":{"@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/"},"author":{"name":"Simon Middleton","@id":"https:\/\/rankotter.ai\/blog\/#\/schema\/person\/d57e4085fc7c90e99086b8e924139b33"},"headline":"SEO content calendar template: columns, examples and how to use it","datePublished":"2026-10-23T11:27:27+00:00","mainEntityOfPage":{"@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/"},"wordCount":2190,"image":{"@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/#primaryimage"},"thumbnailUrl":"https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/seo-content-calendar-planning-desk.jpg","keywords":["content calendar","content planning","content templates","editorial workflow","keyword research","SEO strategy"],"articleSection":["Content Planning"],"inLanguage":"en-GB"},{"@type":"WebPage","@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/","url":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/","name":"SEO content calendar template: free columns and steps","isPartOf":{"@id":"https:\/\/rankotter.ai\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/#primaryimage"},"image":{"@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/#primaryimage"},"thumbnailUrl":"https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/seo-content-calendar-planning-desk.jpg","datePublished":"2026-10-23T11:27:27+00:00","author":{"@id":"https:\/\/rankotter.ai\/blog\/#\/schema\/person\/d57e4085fc7c90e99086b8e924139b33"},"description":"Copy our SEO content calendar template: the columns to track, example rows, a simple cadence and how to plan 30 days of posts that build organic traffic.","breadcrumb":{"@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/#primaryimage","url":"https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/seo-content-calendar-planning-desk.jpg","contentUrl":"https:\/\/rankotter.ai\/blog\/wp-content\/uploads\/2026\/10\/seo-content-calendar-planning-desk.jpg","width":1344,"height":752,"caption":"Printed monthly planner grid with coloured sticky notes on a wooden desk beside a laptop, a mug of tea, a notebook and pen"},{"@type":"BreadcrumbList","@id":"https:\/\/rankotter.ai\/blog\/seo-content-calendar-template\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/rankotter.ai\/blog\/"},{"@type":"ListItem","position":2,"name":"SEO content calendar template: columns, examples and how to use it"}]},{"@type":"WebSite","@id":"https:\/\/rankotter.ai\/blog\/#website","url":"https:\/\/rankotter.ai\/blog\/","name":"Rank Otter Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/rankotter.ai\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/rankotter.ai\/blog\/#\/schema\/person\/d57e4085fc7c90e99086b8e924139b33","name":"Simon Middleton","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","caption":"Simon Middleton"},"description":"Simon has been designing and building web applications since 2003. He runs PS Website Design, a UK web web and app agency, and built RankOtter to grow the websites of the businesses he works with.","url":"https:\/\/rankotter.ai\/blog\/author\/simon-middleton\/"}]}},"_links":{"self":[{"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/posts\/31","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/comments?post=31"}],"version-history":[{"count":0,"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/posts\/31\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/media\/29"}],"wp:attachment":[{"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/media?parent=31"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/categories?post=31"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rankotter.ai\/blog\/wp-json\/wp\/v2\/tags?post=31"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}