Build Journal
Geo Improvements & SEO Sitemap Optimization — August 23, 2026
I optimized geo features and improved the SEO sitemap for better indexing efficiency, addressing multiple issues during the build process.
What shipped
- Geo Feature Improvement — Enhanced accuracy of geo location services by querying multiple providers.
- SEO Sitemap Optimization — Prioritized sitemap shards to maximize crawl efficiency and indexing.
- Deployment Stability — Increased build heap size to prevent out-of-memory errors.
- PM2 Restart Fix — Resolved PM2 restart issues by setting PM2_HOME correctly.
Today, I focused on optimizing the geo features of my platform and enhancing the SEO sitemap to improve indexing efficiency. I shipped one new feature and resolved four critical issues in about two hours. The primary goal was to ensure that users receive accurate geographic information while also making sure that search engines can efficiently crawl and index the site's content.
The standout feature I deployed today was the prioritization of the hashtag inventory sitemap shards. Previously, these shards were arranged in alphabetical order, which meant that Googlebot was wasting its daily crawl budget on less valuable pages. This was a significant oversight, as it left a large number of important pages sitting in the 'Discovered' state without being indexed. By changing the order to strongest-first, I've ensured that pages with higher value are crawled and indexed first, maximizing our visibility on search engines. This change aligns perfectly with my ambition of creating a billion-dollar valuation company, as it directly impacts our search engine rankings and, consequently, our user acquisition.
However, the day was not without its challenges. One of the major issues I encountered was related to the geo functionality. I realized that my system was incorrectly asserting a city location due to inaccuracies from the geo provider. During testing, I was identified as being in Rionegro, Colombia, when I was actually in Bogotá. This misidentification stemmed from the way the geo provider was handling certain ISP blocks. To address this, I modified the system to query two geo providers instead of relying on one, ensuring greater accuracy. This fix took longer than expected as I had to refine how both providers' data was processed and compared. It’s a reminder that even small geo issues can lead to significant user experience problems.
Another substantial fix involved the deployment process. I had to raise the heap size from 3072MB to 6144MB on my new VPS. Initially, I had configured the system for an older box with just 3.7GB of RAM, but the new server has 33GB available. The build process was struggling under the old settings, leading to a garbage collection thrash and eventually an out-of-memory error. Adjusting this parameter not only stabilized the build process but also made it more efficient. It’s fascinating how a simple configuration oversight can consume hours of time.
I also had to address some deployment issues related to the PM2 process manager. After shipping the sitemap, the systemd-run command failed to restart the PM2 workers properly because it was pointing to a fresh PM2 home directory. I learned to set the PM2_HOME variable explicitly to ensure that the correct environment is used during restarts. It’s these little details that can lead to significant downtime or failure in deployment if not handled correctly.
Reflecting on today’s work, I’m increasingly aware of the complexities involved in building a platform like this solo. With Claude Code as my AI teammate, I’m able to tackle these challenges more efficiently, but I still find myself buried in the minutiae of debugging and fine-tuning. Each day, I inch closer to my vision of a streamlined, agentic web platform that not only serves users effectively but also stands out in search engine rankings. The technical hurdles I face are not just obstacles; they are learning opportunities that refine my skills and deepen my understanding of the technology stack.
Moving forward, I plan to keep a close eye on the impact of these changes on our crawl efficiency and indexing rates. It’s crucial to analyze how the adjustments in the sitemap affect our overall SEO performance. I’m also considering further enhancements to the geo features to ensure that users receive the most accurate information possible, which is vital for the agentic web experience I’m aiming to create. Today was a productive day, but I know there’s still much work to be done as I continue this journey toward building something truly remarkable.