I've been building Convertify — a free image converter powered by Rust + libvips. Two weeks in, Google had indexed 18 of my 186 static pages. The numbers were moving, but slowly.
Then I read a recommendation that changed my approach: internal linking is 80% of cluster SEO.
The problem
My converter pages existed in isolation. /heic-to-jpg had no idea /heic-to-png existed. Google couldn't see a cluster — just a collection of unrelated tools.
What I built
A RelatedConversions component that generates contextual links on every page:
const RELATED: Record<string, string[]> = {
heic: ["jpg", "png", "webp", "avif"],
avif: ["jpg", "png", "webp", "heic"],
// ...
};
export default function RelatedConversions({ from, to }) {
// generates links like "HEIC to PNG", "WEBP to JPG" etc.
// deduplicates, shows related formats from both source and target
}
On the homepage — "Popular Conversions". On converter pages — "Related Conversions". Every page now links to 6-8 related pages.
The immediate result
Deployed on day 15. The same day I submitted the key pages for re-indexing in Search Console.
Within 24 hours Google crawled the updated pages. The internal links give Googlebot a clear path through the entire site — it no longer needs to discover pages through the sitemap alone.
What's next
Still too early to see ranking changes — SEO takes weeks. But the site now looks like a cluster to Google, not a collection of isolated tools. That's the foundation for ranking multiple pages simultaneously for the same search query.
Stats so far (week 3, day 2):
18 pages indexed (up from 2 three weeks ago)
Building in public. Follow along if you're curious how Rust + Next.js SSG performs for SEO.
Building Convertify in public. Previous posts:
Top comments (0)