From Hard to Find to Ready to Be Discovered: The SEO Journey of Runner’s Rings
Runner’s Rings is an independently developed running app built to preserve a runner’s journey. While facing repeated Google AdSense rejections, its development team improved how search engines and social platforms understand the website. With ChatGPT as the development partner and Muse as an independent auditor, the team reviewed 65 URLs, added structured data to 49 Journal articles, and improved social sharing metadata. Here is the story behind the work.
Every road you run becomes part of your map. Every effort adds another layer, like the growth rings of a tree.
That is the idea behind Runner’s Rings.
But even when you build an app with passion, people cannot use it unless they discover it.
As an independent developer, I have learned that building something and helping people find it are two different challenges.
■ More articles, but no easy answers
Rings Journal has grown alongside the app.
It is not just a place to explain features. It is also where I share why those features exist and what it means to preserve a lifetime of running.
Meanwhile, Runner’s Rings had faced repeated rejections from Google AdSense.
Was the problem simply the number of articles?
Or was there more we could do to help search engines understand the website?
We decided to investigate the technical foundations.
■ One AI builds. Another AI audits.
ChatGPT, nicknamed “Chappy,” works as the development partner for Runner’s Rings.
An independent AI auditor, known as “Muse,” reviews the results.
Chappy implements changes. Muse checks them independently. If problems appear, Chappy makes corrections.
The final decision belongs to the human developer.
This separation of development and auditing became an important part of our SEO improvements.
■ Step 1: Defining the correct URLs for 65 pages
Our first task involved canonical URLs.
A canonical tag tells search engines which URL should be treated as the preferred address of a page.
We found pages where this information was missing.
After updating the main pages and older Journal articles, Muse checked every URL in the public sitemap.
The result: all 65 pages had exactly one correct canonical URL, with no duplicates or incorrect targets.
■ Steps 2 and 3: Improving social sharing
Next came Open Graph metadata.
This information helps platforms such as X and Threads understand the title, description, and image associated with a shared link.
For a running app, sharing matters.
A map, a monthly running recap, or a growth-ring image might become someone’s first introduction to Runner’s Rings.
We added the necessary metadata to major pages and older Journal articles.
We also reused an existing map preview image and added support for larger image cards on X.
Rather than creating expensive new assets, we focused on making better use of what we already had.
■ Step 4: Helping search engines understand 49 articles
Our final task was structured data using JSON-LD.
Structured data helps describe what a page represents in a machine-readable format.
We added WebSite and Organization information to the homepage, and BlogPosting data to Journal articles.
That covered 12 original articles and 37 newer articles — 49 in total.
We also updated the article generation process so future posts would automatically include structured data.
Muse then audited the published pages.
All 49 articles contained valid BlogPosting data, and no JSON syntax errors were found.
■ Four stages, four successful audits
On October 29, 2026, all four stages of the SEO project passed independent review.
Sixty-five canonical URLs. Forty-nine structured articles. Improved social sharing information.
These are not flashy new features.
Most runners will never notice them directly.
But they are part of building a reliable foundation for the future of Runner’s Rings.
■ Will the world discover us now?
There is one important distinction.
These changes do not guarantee higher search rankings.
They do not guarantee Google AdSense approval either.
What we have done is improve the way search engines and social platforms can understand and present our website.
There is still work ahead, including dedicated English URLs to make international discovery easier.
Runner’s Rings exists to preserve the journeys runners have taken.
And the story of building the app is a journey of its own — full of experiments, setbacks, improvements, and small victories.
If Runner’s Rings is about preserving a life of running, then its development journey deserves to be remembered too.
Perhaps, somewhere in the world, a runner we have never met will discover Runner’s Rings one day.