<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Juan José Peña Delgado</title>
    <description>The latest articles on DEV Community by Juan José Peña Delgado (@jjpdev).</description>
    <link>https://dev.to/jjpdev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3877672%2F580afa0a-c38d-4bcb-b6ce-6e1a235449f8.jpeg</url>
      <title>DEV Community: Juan José Peña Delgado</title>
      <link>https://dev.to/jjpdev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jjpdev"/>
    <language>en</language>
    <item>
      <title>How I Built a 2,600-Page Unit Converter with Programmatic SEO</title>
      <dc:creator>Juan José Peña Delgado</dc:creator>
      <pubDate>Tue, 14 Apr 2026 03:04:00 +0000</pubDate>
      <link>https://dev.to/jjpdev/how-i-built-a-2600-page-unit-converter-with-programmatic-seo-2ml</link>
      <guid>https://dev.to/jjpdev/how-i-built-a-2600-page-unit-converter-with-programmatic-seo-2ml</guid>
      <description>&lt;p&gt;I recently launched &lt;a href="https://qvert.ai" rel="noopener noreferrer"&gt;Qvert&lt;/a&gt; — a free unit conversion website with 2,600+ pages, each targeting a specific conversion pair like "centimeters to inches" or "USD to EUR."&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Every unit converter I used was either:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Slow&lt;/strong&gt; — heavy JavaScript bundles, multiple seconds to load&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cluttered&lt;/strong&gt; — walls of ads before you can even find the input&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Limited&lt;/strong&gt; — one generic converter page for everything&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I wanted something fast, clean, and comprehensive.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Approach: Programmatic SEO
&lt;/h2&gt;

&lt;p&gt;Instead of building one converter page with dropdowns, I generated a &lt;strong&gt;dedicated page for every conversion pair&lt;/strong&gt;. Each page has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Its own URL (&lt;code&gt;/length/cm-to-inch&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Unique meta title and description&lt;/li&gt;
&lt;li&gt;A reference table with common values&lt;/li&gt;
&lt;li&gt;AI-generated content tips (context, use cases, fun facts)&lt;/li&gt;
&lt;li&gt;FAQ section with structured data&lt;/li&gt;
&lt;li&gt;Visual comparison tools&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With 15 unit categories and hundreds of units, this generates 2,600+ unique pages — each one an entry point for organic search.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Smart Search
&lt;/h3&gt;

&lt;p&gt;Users can type naturally: "175 cm in inches" or "how many cups in a gallon." The parser uses scored matching to find the right conversion:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Exact match gets highest priority&lt;/li&gt;
&lt;li&gt;Prefix matching scores next&lt;/li&gt;
&lt;li&gt;Substring matching is a fallback&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This prevents common mistakes like "meters" accidentally matching "millimeters."&lt;/p&gt;

&lt;h3&gt;
  
  
  Visual Comparisons
&lt;/h3&gt;

&lt;p&gt;Instead of just showing numbers, Qvert has interactive visualizations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Dual rulers&lt;/strong&gt; — two rulers with different scales side-by-side, with markers showing where a value lands on each&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;"How many fit?" dot grid&lt;/strong&gt; — animated dots showing how many target units fit in the source value&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Thermometers&lt;/strong&gt; — for temperature conversions, dual thermometers with color coding from blue (cold) to red (hot)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Currency with Live Rates
&lt;/h3&gt;

&lt;p&gt;29 world currencies with rates updated daily. The rates are fetched at build time, so there's zero runtime API cost — the conversion factors are baked directly into the pages.&lt;/p&gt;

&lt;h3&gt;
  
  
  Embeddable Widgets
&lt;/h3&gt;

&lt;p&gt;Any conversion can be embedded on other sites with a single line of code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;iframe&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://qvert.ai/embed/length/cm-to-inch"&lt;/span&gt; 
        &lt;span class="na"&gt;width=&lt;/span&gt;&lt;span class="s"&gt;"450"&lt;/span&gt; &lt;span class="na"&gt;height=&lt;/span&gt;&lt;span class="s"&gt;"230"&lt;/span&gt; &lt;span class="na"&gt;frameborder=&lt;/span&gt;&lt;span class="s"&gt;"0"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/iframe&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This drives traffic back to Qvert while providing value to other site owners.&lt;/p&gt;

&lt;h2&gt;
  
  
  Content Strategy
&lt;/h2&gt;

&lt;p&gt;Each page needs to be unique for SEO. I used AI to generate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Context tips&lt;/strong&gt; — "1 meter is about the height of a kitchen counter"&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Use cases&lt;/strong&gt; — "Commonly used by travelers converting luggage weight limits"&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fun facts&lt;/strong&gt; — "The metric system was introduced during the French Revolution"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This content is generated once at build time, so there's no per-request API cost.&lt;/p&gt;

&lt;h2&gt;
  
  
  Results
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;2,600+ pages across 15 categories&lt;/li&gt;
&lt;li&gt;Pages load in under 50ms&lt;/li&gt;
&lt;li&gt;Each page is under 30KB&lt;/li&gt;
&lt;li&gt;Submitted to Google Search Console with XML sitemap&lt;/li&gt;
&lt;li&gt;Structured data: FAQPage, HowTo, BreadcrumbList schemas&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What I Learned
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Programmatic SEO works&lt;/strong&gt; — generating thousands of pages from data is a powerful strategy for long-tail keywords&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unique content matters&lt;/strong&gt; — Google needs each page to offer something different, not just a different number in the same template&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Speed is a feature&lt;/strong&gt; — when your competition takes 3 seconds to load, loading in 50ms is a genuine differentiator&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Visual tools add value&lt;/strong&gt; — the ruler and dot grid visualizations are what users remember and share&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Try It
&lt;/h2&gt;

&lt;p&gt;Check out &lt;a href="https://qvert.ai" rel="noopener noreferrer"&gt;Qvert&lt;/a&gt; — convert anything instantly. The embeddable widget is free for anyone to use.&lt;/p&gt;

&lt;p&gt;What would you add? Let me know in the comments.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>seo</category>
      <category>productivity</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
