<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <title>SerpDad Blog</title>
  <subtitle>SEO and AI search notes from the SerpDad team</subtitle>
  <id>https://serpdad.com/blog/</id>
  <link rel="alternate" type="text/html" href="https://serpdad.com/blog/"/>
  <link rel="self" type="application/atom+xml" href="https://serpdad.com/blog/atom.xml"/>
  <updated>2026-11-03T00:00:00Z</updated>
  <author>
    <name>SerpDad Blog</name>
  </author>
  <entry>
    <title>Blog speed test: how fast is this Khalid blog?</title>
    <id>https://serpdad.com/blog/blog-speed-test/</id>
    <link rel="alternate" type="text/html" href="https://serpdad.com/blog/blog-speed-test/"/>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <author>
      <name>Khondokar MD Asiful Islam</name>
    </author>
    <summary>Our own blog speed test of this Khalid blog on 3 November 2026, with server times, public load times and page weights. Download the raw numbers.</summary>
    <content type="html">&lt;p&gt;We ran a blog speed test on this blog on 3 November 2026 to check Khalid&#39;s speed claims against real pages. The short version: Khalid answers in about half a millisecond on the server, and most of a reader&#39;s wait is the trip across the internet. Below are our own numbers, how we measured them, and a file of the raw data.&lt;/p&gt;
&lt;aside class=&quot;callout callout-note&quot;&gt;
&lt;p&gt;These are our own measurements of our own blog, not an independent test. We build Khalid, so check the method and the raw numbers before you rely on them.&lt;/p&gt;
&lt;/aside&gt;
&lt;h2 id=&quot;how-fast-does-khalid-answer&quot;&gt;How fast does Khalid answer?&lt;/h2&gt;
&lt;p&gt;Khalid answered each page in about half a millisecond on the server in our blog speed test. That is the time from a request reaching the program to the first byte of the reply. It is fast because Khalid builds each page once, when you publish, and then serves the finished page from memory.&lt;/p&gt;
&lt;h3 id=&quot;server-times-in-our-blog-speed-test&quot;&gt;Server times in our blog speed test&lt;/h3&gt;
&lt;p&gt;We sent twenty requests to each of seven pages from the server itself, so no network sat in the way. The median for every page came in under six tenths of a millisecond, as the chart shows.&lt;/p&gt;
&lt;figure class=&quot;chart chart-bar&quot;&gt;
&lt;figcaption&gt;Server response time by page, median of twenty requests &lt;a class=&quot;chart-file&quot; href=&quot;server.csv&quot; download&gt;CSV&lt;/a&gt;&lt;/figcaption&gt;
&lt;svg class=&quot;chart-drawing&quot; width=&quot;100%&quot; height=&quot;350&quot; aria-hidden=&quot;true&quot;&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;15&quot;&gt;Home&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;22&quot; width=&quot;74.03%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;74.03%&quot; dx=&quot;6&quot; y=&quot;35.5&quot;&gt;0.56ms&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;65&quot;&gt;AI answers guide&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;72&quot; width=&quot;78.00%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;78.00%&quot; dx=&quot;6&quot; y=&quot;85.5&quot;&gt;0.59ms&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;115&quot;&gt;Answer capsule&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;122&quot; width=&quot;60.81%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;60.81%&quot; dx=&quot;6&quot; y=&quot;135.5&quot;&gt;0.46ms&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;165&quot;&gt;Topical map explained&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;172&quot; width=&quot;68.75%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;68.75%&quot; dx=&quot;6&quot; y=&quot;185.5&quot;&gt;0.52ms&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;215&quot;&gt;Building a topical map&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;222&quot; width=&quot;74.03%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;74.03%&quot; dx=&quot;6&quot; y=&quot;235.5&quot;&gt;0.56ms&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;265&quot;&gt;Topical map links&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;272&quot; width=&quot;71.39%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;71.39%&quot; dx=&quot;6&quot; y=&quot;285.5&quot;&gt;0.54ms&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;315&quot;&gt;How this blog works&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;322&quot; width=&quot;55.53%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;55.53%&quot; dx=&quot;6&quot; y=&quot;335.5&quot;&gt;0.42ms&lt;/text&gt;&lt;/svg&gt;
&lt;table class=&quot;visually-hidden&quot;&gt;
&lt;caption&gt;Server response time by page, median of twenty requests&lt;/caption&gt;
&lt;thead&gt;&lt;tr&gt;&lt;th scope=&quot;col&quot;&gt;Page&lt;/th&gt;&lt;th scope=&quot;col&quot;&gt;Milliseconds&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Home&lt;/th&gt;&lt;td&gt;0.56ms&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;AI answers guide&lt;/th&gt;&lt;td&gt;0.59ms&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Answer capsule&lt;/th&gt;&lt;td&gt;0.46ms&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Topical map explained&lt;/th&gt;&lt;td&gt;0.52ms&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Building a topical map&lt;/th&gt;&lt;td&gt;0.56ms&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Topical map links&lt;/th&gt;&lt;td&gt;0.54ms&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;How this blog works&lt;/th&gt;&lt;td&gt;0.42ms&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/figure&gt;
&lt;p&gt;For comparison, Khalid&#39;s own release checks require the first page in under a tenth of a second, and a post page to render in under one millisecond at the median (&lt;a href=&quot;https://github.com/thebigasif/khalid&quot;&gt;Khalid on GitHub&lt;/a&gt;). Our pages stayed well inside both.&lt;/p&gt;
&lt;h2 id=&quot;how-long-does-a-reader-wait&quot;&gt;How long does a reader wait?&lt;/h2&gt;
&lt;p&gt;A reader in our blog speed test waited about two tenths of a second for the first byte of a page over the public internet. That time includes the journey to the server and back through Cloudflare. So almost all of the wait is distance, and only about half a millisecond of it is Khalid.&lt;/p&gt;
&lt;h3 id=&quot;what-a-reader-waits-for&quot;&gt;What a reader waits for&lt;/h3&gt;
&lt;p&gt;We also sent ten requests to each page from our own computer over the public internet, on the same day. Every median came in at about a fifth of a second. A reader closer to the server in Germany would wait less, and one further away would wait more.&lt;/p&gt;
&lt;figure class=&quot;maths&quot;&gt;
&lt;math display=&quot;block&quot;&gt;&lt;mtext&gt;Share&lt;/mtext&gt;&lt;mo&gt;=&lt;/mo&gt;&lt;mfrac&gt;&lt;mtext&gt;server time&lt;/mtext&gt;&lt;mtext&gt;public time&lt;/mtext&gt;&lt;/mfrac&gt;&lt;mo lspace=&quot;0.2222em&quot; rspace=&quot;0.2222em&quot;&gt;×&lt;/mo&gt;&lt;mn&gt;100&lt;/mn&gt;&lt;/math&gt;
&lt;figcaption&gt;Share of the wait spent in Khalid&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;With our medians, that is about half a millisecond divided by about two hundred milliseconds, times a hundred. So Khalid takes up about a quarter of one percent of the wait.&lt;/p&gt;
&lt;h2 id=&quot;how-heavy-are-the-pages-in-the-blog-speed-test&quot;&gt;How heavy are the pages in the blog speed test?&lt;/h2&gt;
&lt;p&gt;The pages in our blog speed test weighed between about a hundred and about three hundred and fifteen kilobytes in all, as Khalid&#39;s own audit counts them. The HTML of each page, the part search engines read first, stayed under forty kilobytes. Most of the rest is the cover picture, served in sizes that fit the reader&#39;s screen.&lt;/p&gt;
&lt;h3 id=&quot;how-much-each-page-weighs&quot;&gt;How much each page weighs&lt;/h3&gt;
&lt;figure class=&quot;chart chart-bar&quot;&gt;
&lt;figcaption&gt;Total page weight by page, from Khalid&amp;#39;s audit &lt;a class=&quot;chart-file&quot; href=&quot;weight.csv&quot; download&gt;CSV&lt;/a&gt;&lt;/figcaption&gt;
&lt;svg class=&quot;chart-drawing&quot; width=&quot;100%&quot; height=&quot;350&quot; aria-hidden=&quot;true&quot;&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;15&quot;&gt;Home&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;22&quot; width=&quot;78.00%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;78.00%&quot; dx=&quot;6&quot; y=&quot;35.5&quot;&gt;314.4KB&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;65&quot;&gt;AI answers guide&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;72&quot; width=&quot;67.60%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;67.60%&quot; dx=&quot;6&quot; y=&quot;85.5&quot;&gt;272.5KB&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;115&quot;&gt;Answer capsule&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;122&quot; width=&quot;52.35%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;52.35%&quot; dx=&quot;6&quot; y=&quot;135.5&quot;&gt;211.0KB&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;165&quot;&gt;Topical map explained&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;172&quot; width=&quot;69.37%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;69.37%&quot; dx=&quot;6&quot; y=&quot;185.5&quot;&gt;279.6KB&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;215&quot;&gt;Building a topical map&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;222&quot; width=&quot;64.21%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;64.21%&quot; dx=&quot;6&quot; y=&quot;235.5&quot;&gt;258.8KB&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;265&quot;&gt;Topical map links&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;272&quot; width=&quot;63.76%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;63.76%&quot; dx=&quot;6&quot; y=&quot;285.5&quot;&gt;257.0KB&lt;/text&gt;&lt;text class=&quot;chart-label&quot; x=&quot;0&quot; y=&quot;315&quot;&gt;How this blog works&lt;/text&gt;&lt;rect class=&quot;s1&quot; x=&quot;0.00%&quot; y=&quot;322&quot; width=&quot;25.83%&quot; height=&quot;18&quot; rx=&quot;3&quot;&gt;&lt;/rect&gt;&lt;text class=&quot;chart-value&quot; x=&quot;25.83%&quot; dx=&quot;6&quot; y=&quot;335.5&quot;&gt;104.1KB&lt;/text&gt;&lt;/svg&gt;
&lt;table class=&quot;visually-hidden&quot;&gt;
&lt;caption&gt;Total page weight by page, from Khalid&amp;#39;s audit&lt;/caption&gt;
&lt;thead&gt;&lt;tr&gt;&lt;th scope=&quot;col&quot;&gt;Page&lt;/th&gt;&lt;th scope=&quot;col&quot;&gt;Kilobytes&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Home&lt;/th&gt;&lt;td&gt;314.4KB&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;AI answers guide&lt;/th&gt;&lt;td&gt;272.5KB&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Answer capsule&lt;/th&gt;&lt;td&gt;211.0KB&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Topical map explained&lt;/th&gt;&lt;td&gt;279.6KB&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Building a topical map&lt;/th&gt;&lt;td&gt;258.8KB&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;Topical map links&lt;/th&gt;&lt;td&gt;257.0KB&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th scope=&quot;row&quot;&gt;How this blog works&lt;/th&gt;&lt;td&gt;104.1KB&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/figure&gt;
&lt;p&gt;Page weight matters for search too. Steve Toth reported in February 2026 that Googlebot reads only the first 2 megabytes of a page (&lt;a href=&quot;https://www.linkedin.com/posts/stevetothjr_seonotebook-activity-7425240174806159361-XY_c&quot;&gt;his post&lt;/a&gt;, 2026). Our heaviest page used about a sixth of that, so search engines read every word.&lt;/p&gt;
&lt;h2 id=&quot;how-did-we-run-the-blog-speed-test&quot;&gt;How did we run the blog speed test?&lt;/h2&gt;
&lt;p&gt;We measured with plain command-line tools, so anyone can repeat the test. Server times came from twenty requests per page made on the server itself. Public times came from ten requests per page over the internet. Page weights came from Khalid&#39;s audit command, run on the same pages.&lt;/p&gt;
&lt;h3 id=&quot;download-the-raw-numbers&quot;&gt;Download the raw numbers&lt;/h3&gt;
&lt;p&gt;The file holds one row per page, with the median server time, the median public time, the HTML weight and the total weight. You may reuse it under a Creative Commons Attribution licence. Please name the SerpDad Blog and link this page.&lt;/p&gt;
&lt;p class=&quot;file&quot;&gt;&lt;a href=&quot;blog-speed-2026-11-03.csv&quot; download&gt;Raw measurements as a CSV file&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;To see how a Khalid blog compares with WordPress on more than speed, read &lt;a href=&quot;https://serpdad.com/blog/khalid-vs-wordpress/&quot;&gt;our Khalid and WordPress comparison&lt;/a&gt;. For every feature this blog uses, see &lt;a href=&quot;https://serpdad.com/blog/how-this-blog-works/&quot;&gt;how this blog works&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>How to build a topical map for your blog, step by step</title>
    <id>https://serpdad.com/blog/build-topical-map/</id>
    <link rel="alternate" type="text/html" href="https://serpdad.com/blog/build-topical-map/"/>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <author>
      <name>Khondokar MD Asiful Islam</name>
    </author>
    <summary>Build a topical map in six steps, from your blog&#39;s purpose to the order you publish in, with this blog&#39;s own topical map as a worked example.</summary>
    <content type="html">&lt;p&gt;To build a topical map, start from what your blog is for, list the core and outer topics around it, group the pages, and plan the order you publish them in. This is part two of our series on topical maps, based on the work of Koray Tugberk Gubur. It turns the idea from &lt;a href=&quot;https://serpdad.com/blog/topical-map-explained/&quot;&gt;part one&lt;/a&gt; into six steps, with this blog&#39;s own map as the example.&lt;/p&gt;
&lt;h2 id=&quot;how-do-i-build-a-topical-map&quot;&gt;How do I build a topical map?&lt;/h2&gt;
&lt;p&gt;Build a topical map in six steps. Name your blog&#39;s purpose, list the core topics, list the outer topics, group the pages, pick each group&#39;s main page, and decide the order you publish in. Each step takes an afternoon at most for a small blog. Also, a plain spreadsheet is enough.&lt;/p&gt;
&lt;h3 id=&quot;six-steps-to-build-a-topical-map&quot;&gt;Six steps to build a topical map&lt;/h3&gt;
&lt;ol class=&quot;howto&quot;&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;Name your blog&amp;#39;s purpose&lt;/p&gt;
&lt;p&gt;First, write one sentence on what your blog sells, does or wants readers to do. Koray calls this the source context, and it decides everything after it.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;List the core topics&lt;/p&gt;
&lt;p&gt;Next, list the questions a reader asks right before they would use what you offer. Together, these pages form the core section of the map.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;List the outer topics&lt;/p&gt;
&lt;p&gt;List the wider questions a reader meets on the way to the core: definitions, background and side questions. Likewise, these pages form the outer section.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;Group the pages&lt;/p&gt;
&lt;p&gt;Then put pages that answer related questions into one group. However, two questions with the same answer share one page, so merge them.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;Pick each group&amp;#39;s main page&lt;/p&gt;
&lt;p&gt;After that, choose the page that answers the group&#39;s broadest question. The other pages in the group link to it, and it links back to each of them.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;Decide the order you publish in&lt;/p&gt;
&lt;p&gt;Plan your publishing order: which group goes first and how fast you publish. The next section explains how Koray orders his.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;which-topics-belong-in-the-core-when-you-build-a-topical-map&quot;&gt;Which topics belong in the core when you build a topical map?&lt;/h2&gt;
&lt;p&gt;The core holds the topics closest to what your blog sells or does: the questions a reader asks just before they act. In contrast, everything else on the subject goes in the outer section. When unsure, ask whether the page would make sense on a blog with a different purpose. If it would, it belongs in the outer section.&lt;/p&gt;
&lt;h3 id=&quot;this-blogs-own-map-as-an-example&quot;&gt;This blog&#39;s own map, as an example&lt;/h3&gt;
&lt;p&gt;When we set out to build a topical map for this blog, we started from its purpose. For example, this blog exists because of SerpDad, a tool that plans a site&#39;s pages from the live search results, and Khalid, our blog engine. Therefore, its core is how a blog gets found, and its outer section explains the terms and methods behind that.&lt;/p&gt;
&lt;div class=&quot;columns&quot;&gt;
&lt;div class=&quot;column&quot;&gt;
&lt;p class=&quot;column-title&quot;&gt;Core section&lt;/p&gt;
&lt;p&gt;Getting quoted in AI answers. Writing answers AI tools can lift. Planning and linking the pages of a topic. Choosing and running a blog engine.&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&quot;column&quot;&gt;
&lt;p class=&quot;column-title&quot;&gt;Outer section&lt;/p&gt;
&lt;p&gt;What each SEO term means, in the glossary. How AI search tools find pages. How search engines judge a site&#39;s coverage of a subject.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Group&lt;/th&gt;
&lt;th&gt;Main page&lt;/th&gt;
&lt;th&gt;Other pages&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;AI search&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://serpdad.com/blog/get-quoted-ai-answers/&quot;&gt;Getting quoted in AI answers&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Writing short answers AI tools quote&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Topical maps&lt;/td&gt;
&lt;td&gt;What a topical map is&lt;/td&gt;
&lt;td&gt;This post, and how the pages link&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Khalid&lt;/td&gt;
&lt;td&gt;Khalid compared with WordPress&lt;/td&gt;
&lt;td&gt;Speed tests, writing a post, release news&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&quot;in-what-order-should-i-publish&quot;&gt;In what order should I publish?&lt;/h2&gt;
&lt;p&gt;Publish one group at a time, starting with the pages that build coverage around a subject before its most searched page. Then keep a steady, rising pace. Koray found that covering the related subtopics first gave his later, bigger pages an easier start, because the site already looked like an authority on the subject.&lt;/p&gt;
&lt;h3 id=&quot;how-koray-orders-his-pages&quot;&gt;How Koray orders his pages&lt;/h3&gt;
&lt;p&gt;In his &lt;a href=&quot;https://www.holisticseo.digital/theoretical-seo/topical-authority/&quot;&gt;topical authority case study&lt;/a&gt;, Koray says he held back the most searched topics on purpose. Instead, he wanted coverage in the related subtopics first. In addition, he ties publishing frequency to how often search engines come back to crawl a site, so a steady, rising pace helps more than a burst.&lt;/p&gt;
&lt;p&gt;For a small blog, that means planning a few posts a week, not a month of posts in one day. Moreover, it means finishing one group before starting the next.&lt;/p&gt;
&lt;h2 id=&quot;next-in-this-series&quot;&gt;Next in this series&lt;/h2&gt;
&lt;p&gt;Once you build a topical map, part three covers &lt;a href=&quot;https://serpdad.com/blog/topical-map-internal-links/&quot;&gt;how its pages should link&lt;/a&gt;, including the words each link should use. To start from the definition, see &lt;a href=&quot;https://serpdad.com/blog/glossary/topical-map/&quot;&gt;what the term means&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>How to get your blog quoted in AI answers</title>
    <id>https://serpdad.com/blog/get-quoted-ai-answers/</id>
    <link rel="alternate" type="text/html" href="https://serpdad.com/blog/get-quoted-ai-answers/"/>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <author>
      <name>Khondokar MD Asiful Islam</name>
    </author>
    <summary>AI answers quote sentences, not pages. Eight moves from Steve Toth&#39;s research that get your blog quoted in ChatGPT, Gemini, Perplexity and Claude.</summary>
    <content type="html">&lt;p&gt;AI answers quote short, plain sentences that answer one question each. To get your blog quoted, write those sentences, put them where a machine reads them at once, and make sure each AI tool can find your page. ChatGPT, Gemini, Perplexity and Claude now answer many questions your readers once searched for. This guide shows how to make the sentences they quote yours.&lt;/p&gt;
&lt;p&gt;Everything here comes from the published research of &lt;a href=&quot;https://stevetoth.ai/how-ai-search-works&quot;&gt;Steve Toth&lt;/a&gt;. He records what AI search tools do behind the scenes. Where a number comes from someone else&#39;s study that he shared, we say so.&lt;/p&gt;
&lt;aside class=&quot;takeaways&quot; aria-label=&quot;Key takeaways&quot;&gt;
&lt;p class=&quot;takeaways-title&quot;&gt;Key takeaways&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AI answers quote single sentences, so each key sentence must stand on its own.&lt;/li&gt;
&lt;li&gt;Put a short answer straight under each question heading.&lt;/li&gt;
&lt;li&gt;Keep paragraphs short, with one idea each.&lt;/li&gt;
&lt;li&gt;Use numbers nobody else has, with the source and the year.&lt;/li&gt;
&lt;li&gt;Keep answers visible on the page, never behind a click.&lt;/li&gt;
&lt;li&gt;Change the updated date only when the post really changed.&lt;/li&gt;
&lt;li&gt;Make sure Bing and Brave can find your posts.&lt;/li&gt;
&lt;/ul&gt;
&lt;/aside&gt;
&lt;h2 id=&quot;why-do-ai-answers-quote-sentences-not-pages&quot;&gt;Why do AI answers quote sentences, not pages?&lt;/h2&gt;
&lt;p&gt;AI answers quote sentences because the tool writes each answer one claim at a time and gives every claim its own source. It searches, gathers a pool of pages, then attaches a page only where one sentence backs the claim. A page without a quotable sentence gets read and then left out.&lt;/p&gt;
&lt;h3 id=&quot;what-steve-toth-found-in-ai-answers&quot;&gt;What Steve Toth found in AI answers&lt;/h3&gt;
&lt;p&gt;Steve Toth recorded 277 conversations with eight AI search tools on 25 September 2026. In 15 of those conversations per tool, most gathered pages never got a citation. The share ran from 52% for Gemini to 75% for Perplexity, with ChatGPT and Claude at 58% (2026). His summary is short: &amp;quot;You are cited for a sentence.&amp;quot;&lt;/p&gt;
&lt;aside class=&quot;callout callout-stat&quot;&gt;
&lt;p&gt;&lt;strong&gt;52% to 75%&lt;/strong&gt; of the pages AI search tools gathered never got a citation, across Gemini, ChatGPT, Claude and Perplexity. Source: Steve Toth, 277 recorded conversations, September 2026.&lt;/p&gt;
&lt;/aside&gt;
&lt;p&gt;So the question is not whether your page is good enough. The question is whether it holds the one sentence this answer needs.&lt;/p&gt;
&lt;h2 id=&quot;how-do-i-write-a-sentence-ai-answers-can-quote&quot;&gt;How do I write a sentence AI answers can quote?&lt;/h2&gt;
&lt;p&gt;Write the answer in the first lines under a heading that asks the question, in forty to sixty words. Steve Toth calls this an &lt;a href=&quot;https://serpdad.com/blog/glossary/answer-capsule/&quot;&gt;answer capsule&lt;/a&gt;. Open with the answer itself, add the one fact that matters most, and keep the detail for the next part of the section.&lt;/p&gt;
&lt;h3 id=&quot;why-answer-capsules-work&quot;&gt;Why answer capsules work&lt;/h3&gt;
&lt;p&gt;In June 2026, Steve Toth shared a study of about 2 million ChatGPT sessions by other researchers. It found an answer capsule on 72.4% of cited pages, right after the title or a question heading (&lt;a href=&quot;https://www.linkedin.com/posts/stevetothjr_seonotebook-ainotebook-activity-7473358900809883648-yaP_&quot;&gt;his post&lt;/a&gt;, 2026). That number is secondhand, so treat it as a direction. The habit costs nothing, and it helps readers who skim.&lt;/p&gt;
&lt;p&gt;Every question in this post opens that way. Our &lt;a href=&quot;https://serpdad.com/blog/write-answer-capsule/&quot;&gt;step-by-step capsule guide&lt;/a&gt; shows how, with a before and after.&lt;/p&gt;
&lt;aside class=&quot;callout callout-tip&quot;&gt;
&lt;p&gt;Read the first lines under each heading on their own. If they still answer the question, the capsule works.&lt;/p&gt;
&lt;/aside&gt;
&lt;h2 id=&quot;how-long-should-each-paragraph-be&quot;&gt;How long should each paragraph be?&lt;/h2&gt;
&lt;p&gt;Keep each paragraph to one idea and roughly seventy-five to two hundred words. AI tools judge passages, not whole pages, and may skip the end of a long one. Steve Toth&#39;s team found that passages of one hundred to three hundred tokens work best for AI answers. A token is about three quarters of a word.&lt;/p&gt;
&lt;h3 id=&quot;splitting-a-long-paragraph&quot;&gt;Splitting a long paragraph&lt;/h3&gt;
&lt;p&gt;A short paragraph keeps its point near its start, so a tool can quote it. When a paragraph covers two ideas, split it. Then give the second idea its own opening sentence. Steve Toth explained the passage finding in a &lt;a href=&quot;https://youtu.be/DFdmSpXglVw&quot;&gt;talk for AirOps&lt;/a&gt; in May 2026.&lt;/p&gt;
&lt;h2 id=&quot;what-kind-of-sentence-gets-quoted&quot;&gt;What kind of sentence gets quoted?&lt;/h2&gt;
&lt;p&gt;The sentence that gets quoted states one fact plainly: who does what, to what. Steve Toth advises writing key facts as subject, verb and object. He also says to drop vague openers, stacked superlatives and hedged verbs, because a plain sentence maps cleanly onto the fact an AI answer needs.&lt;/p&gt;
&lt;h3 id=&quot;a-plain-sentence-and-a-vague-one&quot;&gt;A plain sentence and a vague one&lt;/h3&gt;
&lt;p&gt;Compare two versions of the same fact. &amp;quot;It could be argued that our tool is among the fastest&amp;quot; gives an answer nothing to use. &amp;quot;Khalid serves a post&#39;s first page in under a tenth of a second&amp;quot; does. Steve Toth set out this advice in &lt;a href=&quot;https://seonotebook.notion.site/3848c368519180f786beca07efa09506&quot;&gt;SEO Notebook&lt;/a&gt; in June 2026.&lt;/p&gt;
&lt;h2 id=&quot;which-numbers-help-a-post-get-quoted&quot;&gt;Which numbers help a post get quoted?&lt;/h2&gt;
&lt;p&gt;Numbers help when nobody else has them: your own measurements, or rare figures from a primary source. Put the source and the year beside each one. Steve Toth warns that repeating the numbers every top result already uses adds nothing. He also notes that AI writing tools invent figures, so check every one.&lt;/p&gt;
&lt;h3 id=&quot;how-this-blog-handles-numbers&quot;&gt;How this blog handles numbers&lt;/h3&gt;
&lt;p&gt;On this blog, a number comes from a named source with its year, or from our own test, labelled as ours. We leave out any number we cannot back. Steve Toth&#39;s note on unique numbers is in &lt;a href=&quot;https://seonotebook.notion.site/2e08c368519180b987c5e08ca45b3e34&quot;&gt;SEO Notebook&lt;/a&gt; from February 2026.&lt;/p&gt;
&lt;h2 id=&quot;can-ai-tools-read-text-inside-tabs-and-accordions&quot;&gt;Can AI tools read text inside tabs and accordions?&lt;/h2&gt;
&lt;p&gt;Keep every answer in the page&#39;s plain text, visible when the page loads. Do not hide it behind a click or a script. Steve Toth advises against accordions. He found that AI tools often read pages that hide their answer behind scripts, or bury it low, and then do not cite them.&lt;/p&gt;
&lt;h3 id=&quot;why-this-blog-shows-every-answer&quot;&gt;Why this blog shows every answer&lt;/h3&gt;
&lt;p&gt;This blog runs on Khalid, which sends each page as finished HTML that needs no script to read. Our FAQ answers below stay open, not folded away. Steve Toth&#39;s advice on accordions comes from an &lt;a href=&quot;https://youtu.be/050bcyKMIYY&quot;&gt;LLM Mastery talk&lt;/a&gt; in August 2026.&lt;/p&gt;
&lt;h2 id=&quot;does-the-updated-date-change-ai-answers&quot;&gt;Does the updated date change AI answers?&lt;/h2&gt;
&lt;p&gt;Yes. AI tools lean towards fresh pages, and a visible updated date helps, but only when the post really changed. Steve Toth notes that Perplexity in particular favours recently updated pages. He also warns that faking freshness backfires, so change the date only for real improvements a reader would notice.&lt;/p&gt;
&lt;h3 id=&quot;when-we-change-the-date&quot;&gt;When we change the date&lt;/h3&gt;
&lt;p&gt;We change a post&#39;s updated date only when we add or correct something a reader would notice. Khalid then shows the new date above the post and in its structured data. Steve Toth&#39;s note on Perplexity is in &lt;a href=&quot;https://www.linkedin.com/posts/stevetothjr_your-content-might-be-invisible-in-perplexity-activity-7361381114298437632-jATt&quot;&gt;his post&lt;/a&gt; from August 2025.&lt;/p&gt;
&lt;h2 id=&quot;where-do-ai-tools-search-for-pages-to-quote&quot;&gt;Where do AI tools search for pages to quote?&lt;/h2&gt;
&lt;p&gt;Each AI tool searches its own way, so your posts must be findable there. Microsoft Copilot answers come from Bing, so Steve Toth calls Bing no longer optional. Claude&#39;s web search draws on Brave. In his recordings, Claude&#39;s citations matched Brave&#39;s results for the same search, as his research page shows.&lt;/p&gt;
&lt;h3 id=&quot;three-checks-before-ai-answers-can-find-you&quot;&gt;Three checks before AI answers can find you&lt;/h3&gt;
&lt;p&gt;First, add your site to Bing Webmaster Tools. Next, tell Bing about each new post at once with IndexNow. Then search for your posts on Brave to see whether they appear. Steve Toth&#39;s warning about Bing is in &lt;a href=&quot;https://www.linkedin.com/posts/stevetothjr_microsoft-just-started-testing-a-new-ai-model-activity-7518311185792851968-TdGj&quot;&gt;his post&lt;/a&gt; from October 2026.&lt;/p&gt;
&lt;h2 id=&quot;questions-bloggers-ask-about-ai-answers&quot;&gt;Questions bloggers ask about AI answers&lt;/h2&gt;
&lt;section class=&quot;faq&quot;&gt;
&lt;details open&gt;
&lt;summary&gt;Do I need an llms.txt file to get quoted?&lt;/summary&gt;
&lt;p&gt;No. An &lt;a href=&quot;https://serpdad.com/blog/glossary/llms-txt/&quot;&gt;llms.txt&lt;/a&gt; file is a short guide to your site for AI tools. Steve Toth ranks it as a low priority, because no AI search tool says it reads one. Clear pages with plain answers matter far more. This blog keeps one because it costs nothing.&lt;/p&gt;
&lt;/details&gt;
&lt;details open&gt;
&lt;summary&gt;How can I tell whether AI tools send me visitors?&lt;/summary&gt;
&lt;p&gt;Look for the tags AI tools add to their links. ChatGPT adds utm_source=chatgpt.com and Gemini adds utm_source=gemini, as Steve Toth&#39;s recordings show. Many analytics tools file AI visits as direct traffic, so check those tags in your page reports.&lt;/p&gt;
&lt;/details&gt;
&lt;details open&gt;
&lt;summary&gt;Is an AI bot reading my page the same as being quoted?&lt;/summary&gt;
&lt;p&gt;No. A visit from an AI bot only means the bot read the page. Steve Toth found that AI tools never quoted most of the pages they read. So count the visitors an AI tool sends you, not the times its bot calls.&lt;/p&gt;
&lt;/details&gt;
&lt;details open&gt;
&lt;summary&gt;Does structured data get my posts quoted?&lt;/summary&gt;
&lt;p&gt;Not on its own. Structured data tells search engines who wrote a post and what it covers, which helps smaller sites get recognised. The quote itself still comes from a plain sentence on the page, so write that sentence first.&lt;/p&gt;
&lt;/details&gt;
&lt;/section&gt;
&lt;h2 id=&quot;where-to-start-with-ai-answers&quot;&gt;Where to start with AI answers&lt;/h2&gt;
&lt;p&gt;Start with your three most visited posts. Under each question heading, rewrite the first lines as a short answer. Split any paragraph that covers two ideas, and replace borrowed numbers with ones you can source. Then make sure Bing knows about every post.&lt;/p&gt;
&lt;p&gt;To see how this blog itself gets ready for AI answers, read &lt;a href=&quot;https://serpdad.com/blog/how-this-blog-works/&quot;&gt;how this blog works&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Khalid vs WordPress for a blog</title>
    <id>https://serpdad.com/blog/khalid-vs-wordpress/</id>
    <link rel="alternate" type="text/html" href="https://serpdad.com/blog/khalid-vs-wordpress/"/>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <author>
      <name>Khondokar MD Asiful Islam</name>
    </author>
    <summary>Khalid vs WordPress for a blog, compared fairly on speed, security, SEO, cost and where WordPress is still the better choice. Prices checked 2 November 2026.</summary>
    <content type="html">&lt;p&gt;The main difference between Khalid and WordPress is that Khalid builds each page once, when you publish, while WordPress builds it again on every visit. That one choice explains most of the gap in speed, security and upkeep. In this Khalid vs WordPress comparison, we show where each one wins, including where WordPress is the better choice.&lt;/p&gt;
&lt;p&gt;We build Khalid, a WordPress alternative for blogs, so we have a stake in this. Every fact below comes from our own comparison on the &lt;a href=&quot;https://serpdad.com/khalid/&quot;&gt;Khalid page&lt;/a&gt;, checked against a self-hosted WordPress.org install without plugins on 2 November 2026. Steve Toth advises opening a comparison with its main difference and keeping it fair, so we do both.&lt;/p&gt;
&lt;h2 id=&quot;what-is-the-main-difference-between-khalid-and-wordpress&quot;&gt;What is the main difference between Khalid and WordPress?&lt;/h2&gt;
&lt;p&gt;Khalid is one small program that builds each page once, when you publish, and serves the finished page to every reader. WordPress runs PHP, its core, the theme and every active plugin on each visit, then reads a database. So Khalid has far fewer parts to run, update and protect.&lt;/p&gt;
&lt;h3 id=&quot;why-that-difference-matters&quot;&gt;Why that difference matters&lt;/h3&gt;
&lt;p&gt;In practice, fewer parts means fewer doors for an attacker and fewer updates for you. That is the heart of the Khalid vs WordPress choice. A WordPress blog needs PHP, the WordPress core, a database, a theme and every plugin kept up to date. Khalid needs one program kept up to date. On the other hand, WordPress installs minor security releases by itself, while Khalid waits for you to install each new version.&lt;/p&gt;
&lt;h2 id=&quot;how-do-khalid-and-wordpress-compare-feature-by-feature&quot;&gt;How do Khalid and WordPress compare, feature by feature?&lt;/h2&gt;
&lt;p&gt;Khalid wins on speed, security and built-in SEO, while WordPress wins on page building, online shops, memberships and the size of its community. The table below sets out each feature side by side. Note that it compares a plain WordPress install with no plugins, because every plugin adds its own cost and upkeep.&lt;/p&gt;
&lt;h3 id=&quot;the-khalid-vs-wordpress-table&quot;&gt;The Khalid vs WordPress table&lt;/h3&gt;
&lt;div class=&quot;table-fold&quot;&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Khalid&lt;/th&gt;
&lt;th&gt;WordPress&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;When a page gets built&lt;/td&gt;
&lt;td&gt;Once, when you publish&lt;/td&gt;
&lt;td&gt;On every visit, in PHP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Page caching&lt;/td&gt;
&lt;td&gt;Built in&lt;/td&gt;
&lt;td&gt;Needs a caching plugin&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Scripts needed to read a post&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;td&gt;Depends on the theme and plugins&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Third-party code on the server&lt;/td&gt;
&lt;td&gt;None, there are no plugins&lt;/td&gt;
&lt;td&gt;Every plugin runs with full access&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;What you keep updated&lt;/td&gt;
&lt;td&gt;One program&lt;/td&gt;
&lt;td&gt;Core, PHP, the database, every plugin and theme&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Automatic security updates&lt;/td&gt;
&lt;td&gt;No, you install each release&lt;/td&gt;
&lt;td&gt;Yes, minor core releases install themselves&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;details&gt;
&lt;summary class=&quot;table-fold-more&quot;&gt;Show the rest of the comparison&lt;/summary&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Khalid&lt;/th&gt;
&lt;th&gt;WordPress&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Passkey sign-in&lt;/td&gt;
&lt;td&gt;Built in&lt;/td&gt;
&lt;td&gt;Needs a plugin&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Meta descriptions and &lt;a href=&quot;https://serpdad.com/blog/glossary/schema-markup/&quot;&gt;Schema markup&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Built in&lt;/td&gt;
&lt;td&gt;Needs an SEO plugin&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;XML sitemaps&lt;/td&gt;
&lt;td&gt;Built in, plus news sitemaps&lt;/td&gt;
&lt;td&gt;Built in&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A check that blocks weak posts&lt;/td&gt;
&lt;td&gt;Built in&lt;/td&gt;
&lt;td&gt;Not available&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Page builder for whole layouts&lt;/td&gt;
&lt;td&gt;No, ready templates instead&lt;/td&gt;
&lt;td&gt;Yes, the block and site editor&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Online shop&lt;/td&gt;
&lt;td&gt;Not built for it&lt;/td&gt;
&lt;td&gt;Yes, with WooCommerce&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Paid memberships&lt;/td&gt;
&lt;td&gt;Not available&lt;/td&gt;
&lt;td&gt;Needs a membership plugin&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Where posts live&lt;/td&gt;
&lt;td&gt;Markdown files you can keep in git&lt;/td&gt;
&lt;td&gt;Rows in a MySQL or MariaDB database&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Community and hiring&lt;/td&gt;
&lt;td&gt;A new, small project&lt;/td&gt;
&lt;td&gt;A huge community and hiring pool&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/details&gt;
&lt;/div&gt;
&lt;h2 id=&quot;when-is-wordpress-the-better-choice&quot;&gt;When is WordPress the better choice?&lt;/h2&gt;
&lt;p&gt;WordPress is the better choice when you need an online shop, paid memberships, a drag-and-drop page builder, or a large pool of developers to hire. It also suits teams that want managed hosting from a big company. However, Khalid offers none of these, and we do not plan to add a shop or memberships.&lt;/p&gt;
&lt;h3 id=&quot;what-wordpress-does-well-and-what-it-costs-you&quot;&gt;What WordPress does well, and what it costs you&lt;/h3&gt;
&lt;div class=&quot;proscons&quot;&gt;
&lt;div class=&quot;pros&quot;&gt;
&lt;p class=&quot;proscons-title&quot;&gt;Pros&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A huge library of free plugins and themes for almost any feature&lt;/li&gt;
&lt;li&gt;An online shop through WooCommerce, and paid memberships through plugins&lt;/li&gt;
&lt;li&gt;Minor security releases install themselves&lt;/li&gt;
&lt;li&gt;Many managed hosts and a large hiring pool&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;cons&quot;&gt;
&lt;p class=&quot;proscons-title&quot;&gt;Cons&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Every plugin is more code to trust, update and pay for&lt;/li&gt;
&lt;li&gt;Pages are built on every visit, so speed depends on caching plugins&lt;/li&gt;
&lt;li&gt;SEO, backups and passkeys each need another plugin&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&quot;who-should-run-their-blog-on-khalid&quot;&gt;Who should run their blog on Khalid?&lt;/h2&gt;
&lt;p&gt;Khalid suits a blog whose job is to be found, read and trusted: one that should load fast, stay safe without weekly plugin updates, and get SEO right without add-ons. It also suits writers who want posts as plain files, and anyone who wants no database server to run.&lt;/p&gt;
&lt;h3 id=&quot;where-khalid-shines-and-where-it-falls-short&quot;&gt;Where Khalid shines and where it falls short&lt;/h3&gt;
&lt;div class=&quot;proscons&quot;&gt;
&lt;div class=&quot;pros&quot;&gt;
&lt;p class=&quot;proscons-title&quot;&gt;Pros&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pages are built once, so a first page arrives in under a tenth of a second&lt;/li&gt;
&lt;li&gt;No plugins, no PHP and no database server to patch&lt;/li&gt;
&lt;li&gt;SEO, sitemaps, share images and a linter that blocks weak posts, built in&lt;/li&gt;
&lt;li&gt;Posts are plain files you own and can keep in git&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;cons&quot;&gt;
&lt;p class=&quot;proscons-title&quot;&gt;Cons&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No online shop, no paid memberships and no page builder&lt;/li&gt;
&lt;li&gt;You install each new release yourself&lt;/li&gt;
&lt;li&gt;A new, small project with a small community&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&quot;how-much-does-each-one-cost-a-year&quot;&gt;How much does each one cost a year?&lt;/h2&gt;
&lt;p&gt;WordPress itself is free, and so is Khalid. The difference is what a fast, safe blog needs on top. Making WordPress fast and safe with common premium plugins and cheap shared hosting comes to a few hundred dollars a year. Khalid needs no plugins, and a static Khalid blog can run on a free plan.&lt;/p&gt;
&lt;h3 id=&quot;the-yearly-cost-item-by-item&quot;&gt;The yearly cost, item by item&lt;/h3&gt;
&lt;p&gt;For the Khalid vs WordPress cost question, these are list prices for one site, billed yearly, as checked on 2 November 2026. You may not need every plugin, and prices exclude taxes.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Item&lt;/th&gt;
&lt;th&gt;WordPress, made fast and safe&lt;/th&gt;
&lt;th&gt;Khalid&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;SEO&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://yoast.com/wordpress/plugins/seo/&quot;&gt;Yoast SEO Premium&lt;/a&gt;, $118.80 (2026)&lt;/td&gt;
&lt;td&gt;Built in, free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Caching&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://wp-rocket.me/pricing/&quot;&gt;WP Rocket&lt;/a&gt;, $60.00 (2026)&lt;/td&gt;
&lt;td&gt;Built in, free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Security&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://www.wordfence.com/products/pricing/&quot;&gt;Wordfence Premium&lt;/a&gt;, $149.00 (2026)&lt;/td&gt;
&lt;td&gt;No plugins to protect, free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Backups&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://teamupdraft.com/updraftplus/pricing/&quot;&gt;UpdraftPlus Premium&lt;/a&gt;, $70.00 (2026)&lt;/td&gt;
&lt;td&gt;One command, free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hosting&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://www.bluehost.com/wordpress/wordpress-hosting&quot;&gt;Bluehost shared hosting&lt;/a&gt;, $47.88 (2026)&lt;/td&gt;
&lt;td&gt;Cloudflare&#39;s free plan&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A year in all&lt;/td&gt;
&lt;td&gt;$445.68 (2026)&lt;/td&gt;
&lt;td&gt;$0 (2026)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;With &lt;a href=&quot;https://kinsta.com/pricing/&quot;&gt;Kinsta&lt;/a&gt; managed hosting in place of shared hosting, the WordPress total rises to $747.80 a year (2026). A Khalid blog with the full server features, such as comments and forms, costs $48 a year on a &lt;a href=&quot;https://www.digitalocean.com/pricing/droplets&quot;&gt;DigitalOcean Droplet&lt;/a&gt; (2026).&lt;/p&gt;
&lt;h2 id=&quot;should-you-pick-khalid-or-wordpress&quot;&gt;Should you pick Khalid or WordPress?&lt;/h2&gt;
&lt;p&gt;Pick WordPress if you need a shop, memberships or a page builder, or a big hiring pool. Pick Khalid if your blog is there to be found and read, and you want it fast and safe without plugins. Besides, many sites can do both: a WordPress shop with a Khalid blog on the same domain.&lt;/p&gt;
&lt;h3 id=&quot;how-this-blog-does-it&quot;&gt;How this blog does it&lt;/h3&gt;
&lt;p&gt;For example, this blog runs on Khalid, the blog engine we build, at serpdad.com/blog, next to the rest of the SerpDad site. Read &lt;a href=&quot;https://serpdad.com/blog/how-this-blog-works/&quot;&gt;how this blog works&lt;/a&gt; to see each Khalid feature live. Our &lt;a href=&quot;https://serpdad.com/blog/blog-speed-test/&quot;&gt;speed test of this blog&lt;/a&gt; measures how fast it answers, and &lt;a href=&quot;https://serpdad.com/blog/write-post-khalid/&quot;&gt;our editor walkthrough&lt;/a&gt; shows what writing in it is like. Our guide to &lt;a href=&quot;https://serpdad.com/blog/get-quoted-ai-answers/&quot;&gt;getting quoted in AI answers&lt;/a&gt; also shows what Khalid&#39;s built-in checks look for.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>What a topical map is, and why a small blog needs one</title>
    <id>https://serpdad.com/blog/topical-map-explained/</id>
    <link rel="alternate" type="text/html" href="https://serpdad.com/blog/topical-map-explained/"/>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <author>
      <name>Khondokar MD Asiful Islam</name>
    </author>
    <summary>A topical map plans every page a blog needs to cover one subject and how those pages link. What it is, its two sections, and why it matters.</summary>
    <content type="html">&lt;p&gt;A topical map is the plan of every page your blog needs to cover one subject well, and of how those pages link to each other. You draw it before you write, so every post has a place. This series explains the method in three parts, based on the published work of Koray Tugberk Gubur, who built it. First, this part covers what the map is and why it matters.&lt;/p&gt;
&lt;h2 id=&quot;what-is-a-topical-map&quot;&gt;What is a topical map?&lt;/h2&gt;
&lt;p&gt;A topical map is a plan of the pages a site needs for one subject, grouped and linked in order. Koray Tugberk Gubur splits it into a core section, about what the site sells or does, and an outer section about the wider subject. In addition, the site&#39;s purpose decides which page belongs where.&lt;/p&gt;
&lt;h3 id=&quot;core-and-outer-sections-of-a-topical-map&quot;&gt;Core and outer sections of a topical map&lt;/h3&gt;
&lt;p&gt;Koray calls a site&#39;s purpose its source context. In his words, the source context determines &amp;quot;the topical map&#39;s core and outer sections&amp;quot; (&lt;a href=&quot;https://www.holisticseo.digital/seo-research-study/topical-map/&quot;&gt;his topical map study&lt;/a&gt;). For example, a blog about home energy might put energy prices and tariffs in the core. However, it would put the history of electricity in the outer section.&lt;/p&gt;
&lt;figure class=&quot;pullquote&quot;&gt;
&lt;blockquote&gt;
&lt;p&gt;A topic can&#39;t be defined as the same by every website.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;figcaption&gt;Koray Tugberk Gubur&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;As a result, the same question gets a different answer on different sites. A car blog and a cycling blog both explain electric bikes, but each links the answer to its own core.&lt;/p&gt;
&lt;h2 id=&quot;why-does-a-topical-map-matter-for-a-small-blog&quot;&gt;Why does a topical map matter for a small blog?&lt;/h2&gt;
&lt;p&gt;The map matters because search engines judge how fully a site covers a subject, not only how good one page is. Koray calls this topical coverage. So a small blog with a planned, linked set of pages on one subject can outrank bigger sites that touch the subject once.&lt;/p&gt;
&lt;h3 id=&quot;what-korays-case-study-shows&quot;&gt;What Koray&#39;s case study shows&lt;/h3&gt;
&lt;p&gt;Koray describes topical authority as a way to raise a site&#39;s rankings without backlinks. In one case study, a new site grew from zero to 128,000 organic visits in 123 days (&lt;a href=&quot;https://www.holisticseo.digital/theoretical-seo/topical-authority/&quot;&gt;topical authority case study&lt;/a&gt;, 2020). He credits planned coverage of one subject and a deliberate order of publishing.&lt;/p&gt;
&lt;p&gt;That is one site&#39;s result, so read it as a direction. Still, the lesson for a small blog is clear: cover one subject completely before moving on.&lt;/p&gt;
&lt;h2 id=&quot;how-is-it-different-from-a-keyword-list&quot;&gt;How is it different from a keyword list?&lt;/h2&gt;
&lt;p&gt;A keyword list names searches, while the map names pages and the links between them. Two keywords can share one page, and one keyword can need several. The map also decides the order you publish in and which page links to which. A keyword list never does either.&lt;/p&gt;
&lt;h3 id=&quot;why-a-topical-map-links-its-pages&quot;&gt;Why a topical map links its pages&lt;/h3&gt;
&lt;p&gt;Koray uses the term contextual bridge, in his topical map work, for a link that joins two related topics in a way that makes sense to the reader. Without such bridges, he says, internal links cannot pass relevance between pages. In short, the map is really a map of bridges.&lt;/p&gt;
&lt;h2 id=&quot;koray-tugberk-gubur-on-topical-authority&quot;&gt;Koray Tugberk Gubur on topical authority&lt;/h2&gt;
&lt;p&gt;In this talk on his own channel, Koray explains how a site becomes a topical authority in its niche.&lt;/p&gt;
&lt;figure class=&quot;embed embed-wide&quot;&gt;
&lt;iframe src=&quot;https://www.youtube-nocookie.com/embed/N3EJPksVtpo&quot; title=&quot;How to Be a Topical Authority in Your Niche, by Koray Tugberk Gubur&quot; width=&quot;560&quot; height=&quot;315&quot; loading=&quot;lazy&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; sandbox=&quot;allow-scripts allow-same-origin allow-popups allow-presentation&quot; allow=&quot;encrypted-media; fullscreen; picture-in-picture&quot;&gt;&lt;/iframe&gt;
&lt;figcaption&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=N3EJPksVtpo&quot;&gt;How to Be a Topical Authority in Your Niche, by Koray Tugberk Gubur&lt;/a&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;h2 id=&quot;next-in-this-series&quot;&gt;Next in this series&lt;/h2&gt;
&lt;p&gt;Next, part two shows &lt;a href=&quot;https://serpdad.com/blog/build-topical-map/&quot;&gt;how to build one for your own blog&lt;/a&gt;, step by step. Then part three covers &lt;a href=&quot;https://serpdad.com/blog/topical-map-internal-links/&quot;&gt;linking its pages together&lt;/a&gt;. For a one-line definition, see &lt;a href=&quot;https://serpdad.com/blog/glossary/topical-map/&quot;&gt;our glossary&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>How the internal links in a topical map should work</title>
    <id>https://serpdad.com/blog/topical-map-internal-links/</id>
    <link rel="alternate" type="text/html" href="https://serpdad.com/blog/topical-map-internal-links/"/>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <author>
      <name>Khondokar MD Asiful Islam</name>
    </author>
    <summary>How the internal links in a topical map should point, what their words should say, and when to add them, from Koray Tugberk Gubur&#39;s own case studies.</summary>
    <content type="html">&lt;p&gt;Internal links turn a &lt;a href=&quot;https://serpdad.com/blog/glossary/topical-map/&quot;&gt;topical map&lt;/a&gt; from a list of pages into one connected subject. They tell readers where to go next, and they tell search engines which pages matter most. This is part three of our series on topical maps, based on the work of Koray Tugberk Gubur. It covers which way links point, what their words say, and when to add them.&lt;/p&gt;
&lt;h2 id=&quot;which-way-should-internal-links-point&quot;&gt;Which way should internal links point?&lt;/h2&gt;
&lt;p&gt;Internal links in a topical map point from the outer section towards the core, and between pages in the same group. Each group&#39;s main page links to every page in its group, and each of those pages links back. A link that crosses to another group needs a clear reason a reader would follow.&lt;/p&gt;
&lt;h3 id=&quot;bridges-between-topics&quot;&gt;Bridges between topics&lt;/h3&gt;
&lt;p&gt;Koray calls a link that joins two related topics a contextual bridge. It works when the sentence around the link explains why the next page follows. In his view, links without such a bridge cannot pass relevance from one page to the next, so they do little for the map. Our &lt;a href=&quot;https://serpdad.com/blog/glossary/internal-link/&quot;&gt;glossary&lt;/a&gt; has a short definition of an internal link.&lt;/p&gt;
&lt;h2 id=&quot;how-many-internal-links-does-a-page-need&quot;&gt;How many internal links does a page need?&lt;/h2&gt;
&lt;p&gt;A page needs only a few internal links in its main text, each placed where the reader would want the next page. In one of Koray&#39;s case studies, each page had about ten links in all. Only three of them sat in the main content, chosen for the reader&#39;s search intent. The rest sat in menus.&lt;/p&gt;
&lt;h3 id=&quot;fewer-better-links&quot;&gt;Fewer, better links&lt;/h3&gt;
&lt;p&gt;That case study had no header or footer menu at all. The sidebar listed only five recent posts. So almost every useful link was one a writer placed by hand, inside a sentence, with words that matched the next page. It is a good model for a small blog.&lt;/p&gt;
&lt;h2 id=&quot;what-should-the-link-words-say&quot;&gt;What should the link words say?&lt;/h2&gt;
&lt;p&gt;The link words, called anchor text, should name the page they open, in the words a reader would use. Koray adjusted both the anchor text and the sentence around it to the reader&#39;s search intent. Avoid &amp;quot;click here&amp;quot;, and avoid using the same words for two different pages, which confuses readers.&lt;/p&gt;
&lt;h3 id=&quot;a-good-link-and-a-weak-one&quot;&gt;A good link and a weak one&lt;/h3&gt;
&lt;p&gt;Compare two links to the same guide. &amp;quot;Read more here&amp;quot; tells nobody what opens. &amp;quot;Our guide to &lt;a href=&quot;https://serpdad.com/blog/build-topical-map/&quot;&gt;building a topical map&lt;/a&gt;&amp;quot; tells the reader and the search engine exactly what the next page covers.&lt;/p&gt;
&lt;h2 id=&quot;when-should-i-add-internal-links&quot;&gt;When should I add internal links?&lt;/h2&gt;
&lt;p&gt;Add each internal link as soon as the page it points to exists. When you publish a new page, go back to older pages that mention its topic and link them to it. Koray does this after every new article, because many links could not exist when the older pages first went live.&lt;/p&gt;
&lt;h3 id=&quot;links-that-wait-for-a-page&quot;&gt;Links that wait for a page&lt;/h3&gt;
&lt;p&gt;Koray notes that some older articles could not link to a page that did not exist yet. So each time he publishes, he checks for those missing links and adds them. On this blog we do the same. For example, &lt;a href=&quot;https://serpdad.com/blog/topical-map-explained/&quot;&gt;part one&lt;/a&gt; of this series links forward to the later parts.&lt;/p&gt;
&lt;p&gt;Steve Toth makes a related point for AI search. He links glossary pages to alternatives pages, and those to comparison pages, so each step leads to the next (&lt;a href=&quot;https://youtu.be/ohPxcZJbQi8&quot;&gt;Surfer Academy talk&lt;/a&gt;, January 2026).&lt;/p&gt;
&lt;h2 id=&quot;read-korays-own-work&quot;&gt;Read Koray&#39;s own work&lt;/h2&gt;
&lt;p&gt;Both case studies below are on Koray Tugberk Gubur&#39;s own site, Holistic SEO.&lt;/p&gt;
&lt;p class=&quot;bookmark&quot;&gt;&lt;a href=&quot;https://www.holisticseo.digital/theoretical-seo/topical-authority/&quot;&gt;&lt;span class=&quot;bookmark-title&quot;&gt;Topical Authority SEO case study&lt;/span&gt;&lt;span class=&quot;bookmark-description&quot;&gt;Koray&amp;#39;s case study of topical authority, with his linking, publishing order and coverage in detail.&lt;/span&gt;&lt;span class=&quot;bookmark-host&quot;&gt;www.holisticseo.digital&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class=&quot;bookmark&quot;&gt;&lt;a href=&quot;https://www.holisticseo.digital/seo-research-study/topical-map/&quot;&gt;&lt;span class=&quot;bookmark-title&quot;&gt;How to expand a topical map&lt;/span&gt;&lt;span class=&quot;bookmark-description&quot;&gt;Koray on source context, contextual bridges and the core and outer sections of a topical map.&lt;/span&gt;&lt;span class=&quot;bookmark-host&quot;&gt;www.holisticseo.digital&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;button&quot; href=&quot;https://serpdad.com/blog/glossary/&quot;&gt;See every term in our glossary&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>How to write an answer capsule</title>
    <id>https://serpdad.com/blog/write-answer-capsule/</id>
    <link rel="alternate" type="text/html" href="https://serpdad.com/blog/write-answer-capsule/"/>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <author>
      <name>Khondokar MD Asiful Islam</name>
    </author>
    <summary>An answer capsule is a forty to sixty word answer under a question heading that AI tools can quote whole. Five steps to write one, with an example.</summary>
    <content type="html">&lt;p&gt;An answer capsule is a short, complete answer of forty to sixty words placed straight under a heading that asks a question. It answers that question in its first sentence, so a reader, a search engine or an AI tool can lift it whole. This guide shows how to write one in five steps, with a real before and after.&lt;/p&gt;
&lt;p&gt;The idea comes from &lt;a href=&quot;https://stevetoth.ai/how-ai-search-works&quot;&gt;Steve Toth&lt;/a&gt;, who studies how AI search tools choose what to quote. It is one of the moves in our guide on &lt;a href=&quot;https://serpdad.com/blog/get-quoted-ai-answers/&quot;&gt;getting your blog quoted in AI answers&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&quot;why-do-ai-tools-quote-an-answer-capsule&quot;&gt;Why do AI tools quote an answer capsule?&lt;/h2&gt;
&lt;p&gt;AI tools quote an answer capsule because it is a complete answer that needs nothing around it. An AI answer gets written claim by claim, and each claim borrows one sentence from one page. A capsule hands the tool that sentence, already trimmed, right where the reader asks the question.&lt;/p&gt;
&lt;h3 id=&quot;the-research-behind-it&quot;&gt;The research behind it&lt;/h3&gt;
&lt;p&gt;Steve Toth recorded 277 AI search conversations in September 2026 and summed up what he saw: &amp;quot;You are cited for a sentence.&amp;quot; In June 2026 he also shared a study of about 2 million ChatGPT sessions by other researchers. It found a forty to sixty word answer on 72.4% of cited pages (&lt;a href=&quot;https://www.linkedin.com/posts/stevetothjr_seonotebook-ainotebook-activity-7473358900809883648-yaP_&quot;&gt;his post&lt;/a&gt;, 2026). That second number is secondhand, so read it as a direction, not a law.&lt;/p&gt;
&lt;h2 id=&quot;how-do-i-write-one&quot;&gt;How do I write one?&lt;/h2&gt;
&lt;p&gt;Write it in five steps. Turn the heading into the reader&#39;s question. Answer it in the first sentence. Add the one fact that matters most. Cut the whole answer to forty to sixty words. Then read it on its own to check that it still makes sense without the rest of the post.&lt;/p&gt;
&lt;h3 id=&quot;five-steps-to-an-answer-capsule&quot;&gt;Five steps to an answer capsule&lt;/h3&gt;
&lt;ol class=&quot;howto&quot;&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;Turn the heading into the reader&amp;#39;s question&lt;/p&gt;
&lt;p&gt;Rewrite the heading in the words a reader would type or say. &amp;quot;How long should a blog post be?&amp;quot; works better than &amp;quot;Post length&amp;quot;. Question headings tell the reader and the AI tool exactly what the next lines answer.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;Answer in the first sentence&lt;/p&gt;
&lt;p&gt;Put the answer itself in the first sentence, with no warm-up. If the honest answer depends on something, name that thing in the same sentence.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;Add the one fact that matters most&lt;/p&gt;
&lt;p&gt;Follow with the single fact or condition a reader needs to act on the answer. Keep the reasons, examples and exceptions for the paragraphs below.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;Cut it to forty to sixty words&lt;/p&gt;
&lt;p&gt;Count the words and trim until the answer capsule sits inside that range. Drop hedge words, and keep links out of the first sentence.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class=&quot;howto-step&quot;&gt;Read it on its own&lt;/p&gt;
&lt;p&gt;Cover the heading and the rest of the post, then read the capsule alone. If it still answers the question, an AI tool can quote it. If it leans on &amp;quot;this&amp;quot; or &amp;quot;the above&amp;quot;, rewrite those words.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;what-does-a-good-capsule-look-like&quot;&gt;What does a good capsule look like?&lt;/h2&gt;
&lt;p&gt;A good capsule names the answer in its first words and gives the reader something to act on, all in one short paragraph. Below, one section of a post about blog post length appears two ways. Version one circles the question, while version two answers it.&lt;/p&gt;
&lt;h3 id=&quot;an-answer-capsule-before-and-after&quot;&gt;An answer capsule before and after&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Before&lt;/strong&gt;, under the heading &amp;quot;Post length&amp;quot;: &amp;quot;Post length is a topic many bloggers debate, and there is no single right answer. It depends on a lot of factors, which we will explore in this section, so read on to learn more.&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;After&lt;/strong&gt;, under the heading &amp;quot;How long should a blog post be?&amp;quot;: &amp;quot;A blog post should be as long as it takes to answer the reader&#39;s question fully, and no longer. For most how-to posts that means a few short sections, each opening with its own direct answer, so readers and AI tools find what they need at once.&amp;quot;&lt;/p&gt;
&lt;p&gt;This answer capsule answers in its first clause and still makes sense with the heading covered.&lt;/p&gt;
&lt;h2 id=&quot;which-mistakes-stop-a-capsule-from-being-quoted&quot;&gt;Which mistakes stop a capsule from being quoted?&lt;/h2&gt;
&lt;p&gt;Three mistakes stop most capsules from being quoted. A teaser gives no answer. Hedging hides the answer under extra words. A dependent capsule only makes sense after the paragraph above it. Each one forces the AI tool to look for its sentence on another page, where it often finds one.&lt;/p&gt;
&lt;h3 id=&quot;the-three-mistakes&quot;&gt;The three mistakes&lt;/h3&gt;
&lt;aside class=&quot;callout callout-warning&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;A teaser&lt;/strong&gt; such as &amp;quot;read on to find out&amp;quot; gives the tool nothing to quote.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hedging&lt;/strong&gt; buries the claim under words a reader can delete.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A dependent capsule&lt;/strong&gt; that starts with &amp;quot;This means&amp;quot; or &amp;quot;As shown above&amp;quot; breaks when it stands alone.&lt;/li&gt;
&lt;/ul&gt;
&lt;/aside&gt;
&lt;h2 id=&quot;where-to-use-answer-capsules&quot;&gt;Where to use answer capsules&lt;/h2&gt;
&lt;p&gt;Use an answer capsule under every heading that asks a question, starting with your most visited posts. You do not need one under headings that only name a step or a list. For a one-line definition you can share, see the &lt;a href=&quot;https://serpdad.com/blog/glossary/answer-capsule/&quot;&gt;glossary entry&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>How to write a post in the Khalid editor, start to finish</title>
    <id>https://serpdad.com/blog/write-post-khalid/</id>
    <link rel="alternate" type="text/html" href="https://serpdad.com/blog/write-post-khalid/"/>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <author>
      <name>Khondokar MD Asiful Islam</name>
    </author>
    <summary>How to write a post in the Khalid editor, from passkey sign-in to the checks that stop a weak post, the Google preview and publishing, with a short video.</summary>
    <content type="html">&lt;p&gt;To write a post in the Khalid editor, you sign in with a passkey, give the post a working title, write it in the editor, and fix what the checks beside the text point out. A post that would hurt your blog cannot go live until you fix it. This guide walks through each step, with screenshots and a short video.&lt;/p&gt;
&lt;p&gt;We recorded every step on a test copy of this blog running on our own computer, with a test account. So the addresses you see say localhost, and nothing here touched the live blog.&lt;/p&gt;
&lt;h2 id=&quot;how-do-i-write-a-post-step-by-step&quot;&gt;How do I write a post, step by step?&lt;/h2&gt;
&lt;p&gt;Write a post in Khalid in five steps, all inside the Khalid editor. Sign in with a passkey, start a post with a working title, write the text, fix what the checks flag, then press Publish. The checks sit beside the text, so you see each problem appear and disappear as you type.&lt;/p&gt;
&lt;h3 id=&quot;khalids-editor-on-video&quot;&gt;Khalid&#39;s editor on video&lt;/h3&gt;
&lt;p&gt;The video below runs about half a minute. It shows the passkey sign-in, a new post blocked by a check, the fix, and publishing.&lt;/p&gt;
&lt;figure class=&quot;video&quot;&gt;
&lt;video controls preload=&quot;none&quot; poster=&quot;poster.jpg&quot; aria-label=&quot;Writing a post in Khalid, start to finish&quot;&gt;&lt;source src=&quot;walkthrough.mp4&quot; /&gt;&lt;a href=&quot;walkthrough.mp4&quot;&gt;Writing a post in Khalid, start to finish&lt;/a&gt;&lt;/video&gt;
&lt;figcaption&gt;A silent screen recording on a local test site: signing in with a passkey, starting a post, a check that stops publishing, adding an internal link, and publishing.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;details open&gt;
&lt;summary&gt;Read what the video shows, step by step&lt;/summary&gt;
&lt;p&gt;The video opens on the sign-in screen of the Khalid editor and adds a passkey with one press. Next it opens the dashboard and starts a post called &amp;quot;Why internal links matter&amp;quot;. The checks panel then shows a red block, because the post links to no other post. After that, a short paragraph with one internal link goes in, the red block disappears, and the score rises. Finally, the post gets published.&lt;/p&gt;
&lt;/details&gt;
&lt;h2 id=&quot;how-does-passkey-sign-in-work&quot;&gt;How does passkey sign-in work?&lt;/h2&gt;
&lt;p&gt;A passkey lets you sign in with your fingerprint, face or device PIN instead of a password. The first time, Khalid sends you a one-time sign-in link and offers to make a passkey on your device. After that, you press &amp;quot;Sign in with a passkey&amp;quot; to open the Khalid editor, and nothing a thief could steal sits on the server.&lt;/p&gt;
&lt;h3 id=&quot;signing-in-to-the-khalid-editor&quot;&gt;Signing in to the Khalid editor&lt;/h3&gt;
&lt;figure&gt;
&lt;picture&gt;
&lt;source type=&quot;image/webp&quot; srcset=&quot;/blog/media/89695481e42468cd/320.webp 320w, /blog/media/89695481e42468cd/480.webp 480w, /blog/media/89695481e42468cd/640.webp 640w, /blog/media/89695481e42468cd/800.webp 800w, /blog/media/89695481e42468cd/1024.webp 1024w, /blog/media/89695481e42468cd/1280.webp 1280w&quot; sizes=&quot;(min-width: 48rem) 48rem, 100vw&quot;&gt;
&lt;img src=&quot;/blog/media/89695481e42468cd/1280.png&quot; srcset=&quot;/blog/media/89695481e42468cd/320.png 320w, /blog/media/89695481e42468cd/480.png 480w, /blog/media/89695481e42468cd/640.png 640w, /blog/media/89695481e42468cd/800.png 800w, /blog/media/89695481e42468cd/1024.png 1024w, /blog/media/89695481e42468cd/1280.png 1280w&quot; sizes=&quot;(min-width: 48rem) 48rem, 100vw&quot; width=&quot;1280&quot; height=&quot;720&quot; alt=&quot;Khalid&amp;#39;s screen saying your passkey is ready, with a button to open the admin&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
&lt;/picture&gt;
&lt;figcaption&gt;
&lt;p&gt;The screen after adding a passkey. Next time, one press signs you in.&lt;/p&gt;
&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;h2 id=&quot;what-stops-a-post-from-going-live&quot;&gt;What stops a post from going live?&lt;/h2&gt;
&lt;p&gt;A few checks stop a post from going live, because publishing it would hurt your blog. The most common one is a post with no link to your other posts. Other checks only warn you, such as a missing description. Each check says what is wrong, why it matters and how to fix it.&lt;/p&gt;
&lt;h3 id=&quot;a-post-blocked-then-published&quot;&gt;A post blocked, then published&lt;/h3&gt;
&lt;div class=&quot;gallery&quot;&gt;
&lt;figure&gt;&lt;picture&gt;
&lt;source type=&quot;image/webp&quot; srcset=&quot;/blog/media/ed2e942e8188cd7b/320.webp 320w, /blog/media/ed2e942e8188cd7b/480.webp 480w, /blog/media/ed2e942e8188cd7b/640.webp 640w, /blog/media/ed2e942e8188cd7b/800.webp 800w, /blog/media/ed2e942e8188cd7b/1024.webp 1024w, /blog/media/ed2e942e8188cd7b/1280.webp 1280w&quot; sizes=&quot;(min-width: 48rem) 48rem, 100vw&quot;&gt;
&lt;img src=&quot;/blog/media/ed2e942e8188cd7b/1280.png&quot; srcset=&quot;/blog/media/ed2e942e8188cd7b/320.png 320w, /blog/media/ed2e942e8188cd7b/480.png 480w, /blog/media/ed2e942e8188cd7b/640.png 640w, /blog/media/ed2e942e8188cd7b/800.png 800w, /blog/media/ed2e942e8188cd7b/1024.png 1024w, /blog/media/ed2e942e8188cd7b/1280.png 1280w&quot; sizes=&quot;(min-width: 48rem) 48rem, 100vw&quot; width=&quot;1280&quot; height=&quot;720&quot; alt=&quot;The Khalid editor with a red check that stops publishing because the post links to no other post&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
&lt;/picture&gt;&lt;/figure&gt;
&lt;figure&gt;&lt;picture&gt;
&lt;source type=&quot;image/webp&quot; srcset=&quot;/blog/media/671e5b68c7b94bef/320.webp 320w, /blog/media/671e5b68c7b94bef/480.webp 480w, /blog/media/671e5b68c7b94bef/640.webp 640w, /blog/media/671e5b68c7b94bef/800.webp 800w, /blog/media/671e5b68c7b94bef/1024.webp 1024w, /blog/media/671e5b68c7b94bef/1280.webp 1280w&quot; sizes=&quot;(min-width: 48rem) 48rem, 100vw&quot;&gt;
&lt;img src=&quot;/blog/media/671e5b68c7b94bef/1280.png&quot; srcset=&quot;/blog/media/671e5b68c7b94bef/320.png 320w, /blog/media/671e5b68c7b94bef/480.png 480w, /blog/media/671e5b68c7b94bef/640.png 640w, /blog/media/671e5b68c7b94bef/800.png 800w, /blog/media/671e5b68c7b94bef/1024.png 1024w, /blog/media/671e5b68c7b94bef/1280.png 1280w&quot; sizes=&quot;(min-width: 48rem) 48rem, 100vw&quot; width=&quot;1280&quot; height=&quot;720&quot; alt=&quot;The Khalid editor after you write a post in Khalid with one internal link: published, with only warnings left&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
&lt;/picture&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;p&gt;In the first picture, the score is forty out of a hundred and a red box says &amp;quot;Stops publishing&amp;quot;. Then one sentence with an &lt;a href=&quot;https://serpdad.com/blog/glossary/internal-link/&quot;&gt;internal link&lt;/a&gt; to another post goes in. In the second picture the red box is gone, the score is seventy, and the post shows as published.&lt;/p&gt;
&lt;h2 id=&quot;what-does-the-google-preview-show&quot;&gt;What does the Google preview show?&lt;/h2&gt;
&lt;p&gt;The Google preview shows how the post will look in Google&#39;s results: the address, the title and the line under it. It updates as you type in the Khalid editor, using the same title and description the published page will carry. So you can fix a cut-off title or a missing description before anyone searches for the post.&lt;/p&gt;
&lt;h3 id=&quot;the-preview-for-our-test-post-in-the-editor-in-khalid&quot;&gt;The preview for our test post, in the editor in Khalid&lt;/h3&gt;
&lt;figure&gt;
&lt;picture&gt;
&lt;source type=&quot;image/webp&quot; srcset=&quot;/blog/media/0c6406f3aca28742/320.webp 320w, /blog/media/0c6406f3aca28742/480.webp 480w, /blog/media/0c6406f3aca28742/640.webp 640w, /blog/media/0c6406f3aca28742/800.webp 800w, /blog/media/0c6406f3aca28742/1024.webp 1024w, /blog/media/0c6406f3aca28742/1280.webp 1280w&quot; sizes=&quot;(min-width: 48rem) 48rem, 100vw&quot;&gt;
&lt;img src=&quot;/blog/media/0c6406f3aca28742/1280.png&quot; srcset=&quot;/blog/media/0c6406f3aca28742/320.png 320w, /blog/media/0c6406f3aca28742/480.png 480w, /blog/media/0c6406f3aca28742/640.png 640w, /blog/media/0c6406f3aca28742/800.png 800w, /blog/media/0c6406f3aca28742/1024.png 1024w, /blog/media/0c6406f3aca28742/1280.png 1280w&quot; sizes=&quot;(min-width: 48rem) 48rem, 100vw&quot; width=&quot;1280&quot; height=&quot;720&quot; alt=&quot;Khalid&amp;#39;s Google preview showing a post&amp;#39;s address, title and a note that it has no description yet&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
&lt;/picture&gt;
&lt;figcaption&gt;
&lt;p&gt;With no description set, the preview warns that Google will pick a line from the post on its own.&lt;/p&gt;
&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;h2 id=&quot;what-happens-after-i-publish&quot;&gt;What happens after I publish?&lt;/h2&gt;
&lt;p&gt;After you publish from the Khalid editor, the post goes on your blog at once and joins your feeds and sitemaps. It also builds a share picture for social networks and can tell Bing about the post straight away. You do not install plugins or press anything else for any of it.&lt;/p&gt;
&lt;h3 id=&quot;further-reading&quot;&gt;Further reading&lt;/h3&gt;
&lt;p&gt;To see every feature a reader meets here, read &lt;a href=&quot;https://serpdad.com/blog/how-this-blog-works/&quot;&gt;the tour of this blog&#39;s features&lt;/a&gt;. Khalid itself is free and open source &lt;a href=&quot;https://github.com/thebigasif/khalid&quot;&gt;on GitHub&lt;/a&gt;. To compare Khalid with the engine most blogs use, read &lt;a href=&quot;https://serpdad.com/blog/khalid-vs-wordpress/&quot;&gt;our Khalid and WordPress comparison&lt;/a&gt;. The &lt;a href=&quot;https://serpdad.com/blog/topical-map-explained/&quot;&gt;guide to topical maps&lt;/a&gt; explains why that internal link matters so much.&lt;/p&gt;
</content>
  </entry>
</feed>
