Why I Finally Added a Blog to My Converter Tool
Source: Dev.to
Background
Two months in, 75 pages indexed, zero blog posts. The original plan was to ship converter pages, get them indexed, and figure out the informational content later.
Keyword Discovery
While tracking keywords for Convertify across image‑conversion queries, most terms sat between KD 35 and 86—competitive, slow to move, and needing real backlinks to crack.
This week I noticed a standout:
- what are heic files – 3,600 searches/month, KD 20
For context:
| Keyword | KD |
|---|---|
| heic to jpg | 67 |
| convert png to pdf | 43 |
| avif vs webp | 35 |
| what are heic files | 20 |
The SERP for “what are heic files” is surprisingly weak. Most results are generic explainers rather than tools that solve the problem directly, and no converter tool has a dedicated page ranking for it.
That felt like the right moment to start.
User Journey
The typical user searching “what are heic files” is an iPhone owner who tried to send a photo, got confused, and is a couple of clicks away from needing a converter.
Proposed path:
- Land on
/blog/what-are-heic-files - Understand that HEIC isn’t universally supported
- Follow an internal link to
/heic-to-jpgor/heic-to-pdf - Convert
Informational content converts when internal linking is tight. A blog post with no clear path to the tool is just a vanity page. The goal isn’t content for content’s sake—it’s closing the loop between learning about a format and actually solving the problem.
Implementation
PDF Cluster
The main work was a PDF cluster: three new converter pages plus the blog infrastructure.
-
HEIC → PDF – More interesting than expected. PDF has no
HEVCDecodefilter; the spec only definesDCTDecode(JPEG),FlateDecode, andJPXDecode. Consequently, HEIC always requires a transcode to JPEG before embedding. By contrast, JPG → PDF is literally lossless—bytes go in untouched. I wrote a full explanation in the page content because thin competitor pages skip this depth. -
PDF → PNG – Uses
pdftocairofor rendering.pdftocairoruns about 3–4× faster than ImageMagick at 300 DPI and produces noticeably better anti‑aliasing on text.libvipshas apdfloadwrapper that also calls Poppler under the hood, keeping the pipeline consistent.
# Example rendering PDF to PNG with pdftocairo
pdftocairo -png -dpi 300 input.pdf output
Blog Infrastructure
For the blog I chose PostgreSQL instead of MDX files. Every new MDX post required a deploy, which adds friction for a solo developer writing irregularly.
- The
blog_poststable uses the sameJSONBcontent structure already employed for landing pages, so the renderer was already built. - Adding the blog was mostly schema changes and new routes.
Metrics & Progress
| Metric | Before | Target / Current |
|---|---|---|
| Indexed URLs | 75 | 82 (target after new pages) |
| Impressions (last 3 months) | 509 | — |
| Blog posts live | 0 | 2 (target by end of week) |
The cross‑links added in week 9 across 64 converter pages should start appearing in GSC by Thursday. I’m prioritizing site structure and internal linking before investing in backlink outreach. Structural fixes take a few crawl cycles to surface; each one provides slow feedback, but the effects compound.
SEO Feedback Loop
The interesting part about SEO at this stage isn’t traffic yet—it’s the feedback loops. You ship a structural change, wait through a few crawl cycles, and slowly learn which assumptions were right. Most changes take weeks to show up, so you’re essentially running experiments with a ~3‑week delay on results.
The KD 20 HEIC query is the first time the feedback loop feels short enough to actually compound. If a new domain can rank for KD 20 in a reasonable timeframe, that’s a signal worth building on.
Next Steps
- Thursday’s GSC analysis to evaluate the new cross‑links.
- Continue expanding the PDF cluster and tightening internal linking.
- Begin modest backlink outreach once the structural gains stabilize.
About Convertify
Convertify is a free image converter built with Rust, libvips, and Next.js (SSG).
Archive
Week 1–10 archive: