Build Journal
Analytics Traffic-Source Attribution & Tbot Fixes — August 14, 2026
I focused on enhancing analytics with traffic-source attribution and fixing bot issues, all while managing TLS cert expirations. Here's what I learned.
What shipped
- Traffic-source attribution — New feature captures external referrer, UTM, and nav-type.
- Bot RPC read fixes — Implemented fast fail on fetches, improved responsiveness.
- TLS expiry sentinel — Daily email alerts for certificate renewal issues.
- Analytics bug fixes — Corrected bot UAs in live presence map and beacon attribution.
Today was a marathon of a day, clocking in at around 23 hours, but I managed to ship some significant updates that I believe will enhance the functionality of my platform. I focused primarily on improving analytics through a new traffic-source attribution feature and tackled several bugs that had been affecting the bot operations. It’s all part of my broader mission to build a one-man-show company capable of reaching billion-dollar valuations, and today’s work is a step toward that goal.
The standout feature I delivered is the traffic-source attribution for beacon v2, which captures critical data like external referrer, UTM parameters, and navigation type. This is particularly exciting because it allows me to see where traffic is genuinely coming from, especially from AI sources like ChatGPT, Perplexity, and others. I had previously noticed a disparity where I had 264 visits but no clicks from Google Search Console, which made it clear that I needed to understand my traffic better. This new panel on the admin analytics section will help me visualize the actual referrers, making it easier to optimize my outreach and content strategies. It’s a feature that I believe will provide real value as I continue to refine my product.
However, the day wasn’t without its challenges. I encountered issues with the bot's RPC reads that were causing significant delays. Fetches were hanging for 30 to 90 seconds due to rate-limiting endpoints, which was piling up dashboard polls and ultimately stalling the application. It took a while to diagnose this because the symptom wasn’t immediately obvious; it required digging into the logs and understanding the flow of requests. I implemented a fix that included a 6-second fetch bound and removed the web3.js 429 backoff ladder. This should prevent the app from hanging in the future and improve the overall responsiveness of the trading bot.
In another area, I worked on fixing analytics-related bugs. The first was ensuring that bot user agents entered the live-human presence map correctly. Previously, meta-externalagent was running full Chrome+JS, but it was only reading as 28 humans live, which didn’t reflect reality. I reused the gate from a previous activity-feed fix to resolve this, and it’s now functioning correctly. Additionally, I addressed the issue of misattributed legacy bare-path beacons from cached pages. These were previously being labeled as direct traffic, which skewed the analytics. By ensuring only v2 JSON beacons are attributed, I can now trust the data more effectively.
On the operational side, I also set up a daily TLS certificate expiry sentinel. This new feature will email me only when the auto-renewal has already failed and there are fewer than 21 days left before the certificate expires. This is crucial for maintaining the security and reliability of my platform, especially as I move toward scaling it further. I switched wildcard and tube renewals to DNS-Cloudflare, and this should streamline the renewal process considerably.
Reflecting on the day, I’m proud of the progress I made, but it’s clear that working solo comes with its own set of challenges. Collaborating with Claude Code in VS Code continues to be a game changer. While I could easily spend resources on tools like Lovable or Cursor, I find that leveraging AI for coding assistance has allowed me to maintain focus and control over my project. This autonomy is vital as I build toward my ambitious vision.
All in all, today felt like a significant leap forward. The new features and fixes not only enhance the product but also bring me closer to my vision of an agentic web that empowers users. I’m looking forward to seeing how these changes impact user engagement and analytics moving forward. As I continue to build in public, I’m learning that every challenge faced is just another step in the journey toward creating something truly valuable. Tomorrow, I’ll be diving deeper into user feedback and metrics to refine my approach even further.