<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: David🚀</title>
    <description>The latest articles on DEV Community by David🚀 (@juggernautmain).</description>
    <link>https://dev.to/juggernautmain</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3423798%2F54d2d361-3e9b-40f9-8219-3d1082e95c16.jpg</url>
      <title>DEV Community: David🚀</title>
      <link>https://dev.to/juggernautmain</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/juggernautmain"/>
    <language>en</language>
    <item>
      <title>Why I Ditched Google Analytics for My Startup and Built My Own Traction Tool</title>
      <dc:creator>David🚀</dc:creator>
      <pubDate>Tue, 09 Sep 2025 06:30:40 +0000</pubDate>
      <link>https://dev.to/juggernautmain/why-i-ditched-google-analytics-for-my-startup-and-built-my-own-traction-tool-194p</link>
      <guid>https://dev.to/juggernautmain/why-i-ditched-google-analytics-for-my-startup-and-built-my-own-traction-tool-194p</guid>
      <description>&lt;p&gt;When I first launched my startup, I did what almost every founder does: I installed Google Analytics.&lt;br&gt;
It’s the default. Everyone says you need it.&lt;/p&gt;

&lt;p&gt;But after weeks of trying to use it, I realized something: I was drowning in dashboards and graphs, yet still couldn’t answer the only question that mattered to me:&lt;/p&gt;

&lt;p&gt;👉 “Which post or link is actually bringing me new signups?”&lt;/p&gt;




&lt;h2&gt;
  
  
  The Problem With Google Analytics
&lt;/h2&gt;

&lt;p&gt;Don’t get me wrong, Google Analytics is powerful. If you’re running a big e-commerce store or managing multiple ad campaigns, it’s probably the right tool.&lt;/p&gt;

&lt;p&gt;But for a solo founder like me, it felt like trying to fly a Boeing 747 when all I needed was a bicycle.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Too many menus, metrics, and jargon.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Hard to set up funnels or events without hours of tweaking.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;I just wanted clarity, but GA buried me in noise.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The truth? Most early-stage founders don’t need more data.&lt;br&gt;
We need the right data.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I Actually Needed
&lt;/h2&gt;

&lt;p&gt;At the early stage, growth comes from experiments:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Posting on Reddit&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sharing a thought on X&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Answering a question on Quora&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Dropping your link in a directory&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The question is: which of these experiments is working?&lt;/p&gt;

&lt;p&gt;I didn’t need heatmaps, bounce rates, or conversion paths.&lt;br&gt;
I just needed to know: “Did this specific post bring me signups?”&lt;/p&gt;

&lt;p&gt;That’s it.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Breaking Point
&lt;/h2&gt;

&lt;p&gt;One morning, after wrestling with GA for the hundredth time, I realized I was spending more time learning an analytics tool than growing my startup.&lt;/p&gt;

&lt;p&gt;That’s when it clicked:&lt;br&gt;
If the tools don’t fit the stage I’m in, maybe I should build one that does.&lt;/p&gt;




&lt;h2&gt;
  
  
  Building My Own Traction Tool
&lt;/h2&gt;

&lt;p&gt;So I built something lightweight:&lt;/p&gt;

&lt;p&gt;Instead of setting up complex events, I create a custom link for every post or share.&lt;/p&gt;

&lt;p&gt;I group these links into channels (e.g., Reddit posts, Twitter DMs, directories).&lt;/p&gt;

&lt;p&gt;When someone clicks, I instantly know which post brought them in.&lt;/p&gt;

&lt;p&gt;No dashboards. No endless graphs. Just clear answers to simple questions.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I Learned
&lt;/h2&gt;

&lt;p&gt;Ditching Google Analytics taught me something important about traction:&lt;br&gt;
It’s not about tracking everything. It’s about tracking the few things that matter right now.&lt;/p&gt;

&lt;p&gt;For me, one experiment showed that a single Reddit comment outperformed 10 polished blog posts. That insight shifted how I approached growth.&lt;/p&gt;

&lt;p&gt;When you know exactly what’s working, you can stop guessing and start doubling down.&lt;/p&gt;




&lt;h2&gt;
  
  
  Closing Thoughts
&lt;/h2&gt;

&lt;p&gt;If you’re an early-stage founder, don’t let complex tools slow you down.&lt;br&gt;
Focus on clarity, not noise.&lt;/p&gt;

&lt;p&gt;That’s why I ditched Google Analytics and why I built my own traction tool to grow with less guesswork.&lt;/p&gt;

&lt;p&gt;👉 If you’ve ever felt overwhelmed by analytics and just wanted to know which post is actually working, you’ll understand exactly why I built &lt;a href="https://go.reddimon.com/postfive" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt;&lt;/p&gt;

</description>
      <category>saas</category>
      <category>startup</category>
      <category>analytics</category>
      <category>founderstory</category>
    </item>
    <item>
      <title>Plug-and-Play Attribution Dashboard You Can Build in a Day</title>
      <dc:creator>David🚀</dc:creator>
      <pubDate>Tue, 26 Aug 2025 12:49:24 +0000</pubDate>
      <link>https://dev.to/juggernautmain/plug-and-play-attribution-dashboard-you-can-build-in-a-day-47kb</link>
      <guid>https://dev.to/juggernautmain/plug-and-play-attribution-dashboard-you-can-build-in-a-day-47kb</guid>
      <description>&lt;p&gt;Most solo founders post across Reddit, X, Product Hunt, Indie Hackers… then stare at their analytics and think:&lt;/p&gt;

&lt;p&gt;“Cool, traffic went up… but which channel actually brought signups?”&lt;/p&gt;

&lt;p&gt;That’s the blind spot. Traditional analytics tools are bloated and DIY setups are a weekend you don’t have.&lt;/p&gt;

&lt;p&gt;That’s why I built &lt;a href="https://go.reddimon.com/postfour" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt;, a plug-and-play attribution dashboard that shows you, in under a day, exactly which channels are moving the needle.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why lightweight attribution matters
&lt;/h2&gt;

&lt;p&gt;Here’s the ugly truth: more traffic ≠ more customers.&lt;/p&gt;

&lt;p&gt;The only metric that matters in early-stage growth is which channels turn into signups. If you don’t know that, you end up wasting weeks doubling down on the wrong place.&lt;/p&gt;

&lt;p&gt;With &lt;a href="https://go.reddimon.com/postfour" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt;, you can skip the guesswork. It’s designed for solo founders who want clarity without touching GA4 or complicated event tracking.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to set it up (Step-by-Step)
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1 — Create your Reddimon account&lt;/strong&gt;&lt;br&gt;
Sign up → takes 60 seconds. No setup wizard, no domain config, no tracking hell.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2 — Generate a tracking link&lt;/strong&gt;&lt;br&gt;
Instead of sharing a raw link, &lt;a href="https://go.reddimon.com/postfour" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt; gives you a custom link. Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;go.yourapp.com/reddit-launch  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Under the hood, &lt;a href="https://go.reddimon.com/postfour" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt; automatically tags it with the right source and campaign.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3 — Share it across channels&lt;/strong&gt;&lt;br&gt;
Post your Reddit comment, drop your X thread, or DM a potential user. Each channel gets its own clean link.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4 — See your dashboard update&lt;/strong&gt;&lt;br&gt;
When people click, &lt;a href="https://go.reddimon.com/postfour" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt; instantly shows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which post/comment/thread drove the click&lt;/li&gt;
&lt;li&gt;Which ones led to actual signups&lt;/li&gt;
&lt;li&gt;Side-by-side comparison of your channels&lt;/li&gt;
&lt;li&gt;No manual tagging, no spreadsheets.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What it looks like (Example)
&lt;/h2&gt;

&lt;p&gt;Let’s say you launch in 3 places:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Reddit comment on r/startups&lt;/li&gt;
&lt;li&gt;A thread on X&lt;/li&gt;
&lt;li&gt;A post on Indie Hackers
After a day, your dashboard might look like this:&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Channel&lt;/th&gt;
&lt;th&gt;Clicks&lt;/th&gt;
&lt;th&gt;Signups&lt;/th&gt;
&lt;th&gt;Conversion %&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Reddit (comment)&lt;/td&gt;
&lt;td&gt;57&lt;/td&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;21%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;X (thread)&lt;/td&gt;
&lt;td&gt;101&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Indie Hackers&lt;/td&gt;
&lt;td&gt;33&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;24%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;With one glance, you know Reddit + Indie Hackers are worth doubling down, while X is just vanity clicks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Limitations (Keeping it real)
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;It won’t give you “enterprise-grade, multi-touch attribution.”&lt;/li&gt;
&lt;li&gt;It’s not a BI tool.&lt;/li&gt;
&lt;li&gt;It’s built for solo founders who want clarity fast.
The idea: spend less time tracking, more time on the channels that actually convert.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;You can do this in under 5 minutes. With &lt;a href="https://go.reddimon.com/postfour" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt;, you’ll know which channel brought the signups that matter not just traffic.&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://go.reddimon.com/postfour" rel="noopener noreferrer"&gt;Try it free&lt;/a&gt;, set up your first links and by this weekend you’ll have clarity most founders never get.&lt;/p&gt;

</description>
      <category>startup</category>
      <category>marketing</category>
      <category>saas</category>
      <category>analytics</category>
    </item>
    <item>
      <title>Dos and Don’ts of Building a Tracking Script in Vanilla JS</title>
      <dc:creator>David🚀</dc:creator>
      <pubDate>Wed, 20 Aug 2025 16:51:29 +0000</pubDate>
      <link>https://dev.to/juggernautmain/dos-and-donts-of-building-a-tracking-script-in-vanilla-js-5cn2</link>
      <guid>https://dev.to/juggernautmain/dos-and-donts-of-building-a-tracking-script-in-vanilla-js-5cn2</guid>
      <description>&lt;p&gt;Most solo founders eventually hit the same wall:&lt;br&gt;
“How do I actually know where my users are coming from?”&lt;/p&gt;

&lt;p&gt;Sure, you can install Google Analytics or some other heavy library, but in my case, I didn’t want the weight, the complexity or the setup. I just wanted something lightweight drop a &lt;code&gt;script&lt;/code&gt; tag on my landing page and instantly know:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;who visited&lt;/li&gt;
&lt;li&gt;where they came from&lt;/li&gt;
&lt;li&gt;and whether they converted.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So I did the thing every indie hacker tells themselves they’ll never do, I rolled my own tracking script in vanilla JS. Spoiler: it worked, but I made a lot of mistakes along the way.&lt;/p&gt;

&lt;p&gt;Here are some dos and don’ts that would have saved me hours if I knew them earlier.&lt;/p&gt;


&lt;h2&gt;
  
  
  ✅ Do: Keep It Lightweight
&lt;/h2&gt;

&lt;p&gt;The beauty of writing a vanilla JS tracking script is that you can keep it under a few kilobytes. No need for 100KB+ analytics libraries.&lt;/p&gt;

&lt;p&gt;A basic visitor tracking snippet only needs to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;grab the current URL&lt;/li&gt;
&lt;li&gt;capture referrer (if available)&lt;/li&gt;
&lt;li&gt;send that data to your server
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;script&amp;gt;
  (function() {
    const payload = {
      url: window.location.href,
      referrer: document.referrer,
      timestamp: Date.now()
    };

    navigator.trackDetails(
      "https://your-tracker-endpoint.com/collect",
      JSON.stringify(payload)
    );
  })();
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;That’s it. Async, lightweight, no extra dependencies.&lt;/p&gt;


&lt;h2&gt;
  
  
  ❌ Don’t: Block the Main Thread
&lt;/h2&gt;

&lt;p&gt;One of my early mistakes was firing a synchronous fetch() call before the page finished loading. On a slow connection, this delayed the entire page render basically the opposite of what you want.&lt;/p&gt;

&lt;p&gt;For tracking, reliability &amp;gt; speed, but you never want to hurt UX. That’s why navigator.trackDetails is your best friend, it ships data in the background even if the user closes the tab immediately after clicking.&lt;/p&gt;


&lt;h2&gt;
  
  
  ✅ Do: Respect Privacy (Collect Only What You Need)
&lt;/h2&gt;

&lt;p&gt;It’s tempting to grab everything you can like IP addresses, user agents, even mouse movements. Don’t. Not only is it overkill, but you’ll run into GDPR/CCPA compliance headaches.&lt;/p&gt;

&lt;p&gt;For most startups, you only need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;URL visited&lt;/li&gt;
&lt;li&gt;Referrer/source&lt;/li&gt;
&lt;li&gt;Event type (e.g. signup, conversion)
Less is more. Your future self (and your lawyers) will thank you.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  ❌ Don’t: Rely Only on Cookies
&lt;/h2&gt;

&lt;p&gt;Cookies are fragile. Users block them, browsers restrict them and incognito tabs erase them. If your script only uses cookies for user/session tracking, your data will get swiss-cheesed.&lt;/p&gt;

&lt;p&gt;Instead, consider a lightweight fingerprint:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;session ID stored in memory/localStorage&lt;/li&gt;
&lt;li&gt;or server-issued UUID attached to the first request&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Just don’t go creepy with full device fingerprinting, it’s bad karma.&lt;/p&gt;


&lt;h2&gt;
  
  
  ✅ Do: Handle Single Page Apps (SPAs)
&lt;/h2&gt;

&lt;p&gt;Modern apps don’t always reload pages. If you only fire tracking on window.onload, you’ll miss half your events.&lt;/p&gt;

&lt;p&gt;For SPAs, listen to history changes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
(function(history){
  const pushState = history.pushState;
  history.pushState = function(state) {
    trackPageView();
    return pushState.apply(history, arguments);
  };
})(window.history);

window.addEventListener('popstate', trackPageView);

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now your tracker fires on route changes without needing a reload.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❌ Don’t: Forget Opt-Outs
&lt;/h2&gt;

&lt;p&gt;If someone doesn’t want to be tracked, respect it. A simple global flag works:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;if (!window.doNotTrack) {
  // run tracking code
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Better yet, expose a public function:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;window.disableTracking = true;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Users and devs alike will appreciate the transparency.&lt;/p&gt;




&lt;h2&gt;
  
  
  Wrapping Up: How This Shaped Reddimon
&lt;/h2&gt;

&lt;p&gt;When I built &lt;a href="https://go.reddimon.com/postthree" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt;, I wanted founders to have a tracking script as simple as the code above: copy-paste one &lt;code&gt;script&lt;/code&gt; tag and you’re done.&lt;/p&gt;

&lt;p&gt;The lessons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Keep it tiny&lt;/li&gt;
&lt;li&gt;Don’t block UX&lt;/li&gt;
&lt;li&gt;Collect only what matters&lt;/li&gt;
&lt;li&gt;Support SPAs&lt;/li&gt;
&lt;li&gt;Respect opt-outs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re thinking of rolling your own, I hope these dos and don’ts save you some pain. And if you’d rather not reinvent the wheel well, that’s why I wrapped mine into &lt;a href="https://go.reddimon.com/postthree" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>programming</category>
      <category>saas</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Why Most Founder Analytics Are Useless And What to Track Instead</title>
      <dc:creator>David🚀</dc:creator>
      <pubDate>Tue, 12 Aug 2025 14:32:52 +0000</pubDate>
      <link>https://dev.to/juggernautmain/why-most-founder-analytics-are-useless-and-what-to-track-instead-13eh</link>
      <guid>https://dev.to/juggernautmain/why-most-founder-analytics-are-useless-and-what-to-track-instead-13eh</guid>
      <description>&lt;p&gt;When I first started promoting my product, I did what most founders do.&lt;/p&gt;

&lt;p&gt;I posted on Reddit, Twitter, startup directories… basically anywhere someone might listen.&lt;/p&gt;

&lt;p&gt;Every day I was “doing marketing,” but I had no idea which of my posts were actually working.&lt;br&gt;
I’d look at Google Analytics, see numbers going up or down and still couldn’t answer the one question that mattered:&lt;/p&gt;

&lt;p&gt;“Where are my users actually coming from?”&lt;/p&gt;




&lt;h2&gt;
  
  
  The Problem With Traditional Analytics
&lt;/h2&gt;

&lt;p&gt;Most analytics tools are built for large teams who already have traffic.&lt;br&gt;
They give you 100+ charts, funnels and metrics but in the early days, all that noise can be overwhelming and honestly, useless.&lt;/p&gt;

&lt;p&gt;When you’re at 50 visitors a day, you don’t need advanced cohort analysis.&lt;br&gt;
You just need to know:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which tweet brought in a signup&lt;/li&gt;
&lt;li&gt;Which Reddit comment sparked interest&lt;/li&gt;
&lt;li&gt;Which guest post actually got clicks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you don’t have that clarity, you’ll keep wasting time on channels that don’t convert.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Lean Tracking Mindset
&lt;/h2&gt;

&lt;p&gt;Here’s the mindset shift that changed everything for me:&lt;br&gt;
Instead of tracking everything, track only what directly connects to growth.&lt;/p&gt;

&lt;p&gt;That means your “analytics” could be as simple as:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Identify a channel you’re posting to (Reddit, Twitter, etc.)&lt;/li&gt;
&lt;li&gt;Create a unique tracking link for each post or comment&lt;/li&gt;
&lt;li&gt;Measure which one leads to a signup or desired action&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;It’s not fancy, but it’s brutally effective.&lt;/p&gt;




&lt;h2&gt;
  
  
  The 3-Step Lean Tracking Framework
&lt;/h2&gt;

&lt;p&gt;Step 1 – Define the action that matters most&lt;br&gt;
For me, it’s a new user signup. For you, it could be a download, a form submission or a payment.&lt;/p&gt;

&lt;p&gt;Step 2 – Create unique links for every channel/tactic&lt;br&gt;
Instead of sending everyone to myproduct.com, I make a slightly different link for each place I post.&lt;br&gt;
That way, I can see exactly which one drives results.&lt;/p&gt;

&lt;p&gt;Step 3 – Double down on what works&lt;br&gt;
If one Reddit thread brings in 10 signups and a Twitter post brings in 0, I know where to put my time next week.&lt;/p&gt;




&lt;h2&gt;
  
  
  How I Applied This
&lt;/h2&gt;

&lt;p&gt;I built a lightweight tool that let me create these custom links in seconds and track signups without touching Google Analytics.&lt;br&gt;
Last month, I posted in a “Show Your Startup” thread on Twitter using one of these links.&lt;br&gt;
That single post brought 48 visitors in a day and I could trace every one of them back to that tweet.&lt;/p&gt;

&lt;p&gt;Without this setup, I’d have had no idea where they came from.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Takeaway for Early-Stage Founders
&lt;/h2&gt;

&lt;p&gt;You don’t need fancy dashboards to grow.&lt;br&gt;
You need clarity.&lt;br&gt;
If you can see exactly which posts, comments, or ads drive conversions, you can focus on what’s working and stop wasting time on what’s not.&lt;/p&gt;

&lt;p&gt;I built &lt;a href="https://go.reddimon.com/posttwo" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt; to make this process ridiculously simple no code, no setup, just a custom link for every channel you try.&lt;br&gt;
But even if you do it with spreadsheets, the principle is the same:&lt;/p&gt;

&lt;p&gt;Track less, learn more, grow faster.&lt;/p&gt;

</description>
      <category>startup</category>
      <category>marketing</category>
      <category>saas</category>
      <category>analytics</category>
    </item>
    <item>
      <title>How I Built a Click Tracking System Without Cookies or Complex Setup</title>
      <dc:creator>David🚀</dc:creator>
      <pubDate>Sat, 09 Aug 2025 17:02:16 +0000</pubDate>
      <link>https://dev.to/juggernautmain/how-i-built-a-click-tracking-system-without-cookies-or-complex-setup-355l</link>
      <guid>https://dev.to/juggernautmain/how-i-built-a-click-tracking-system-without-cookies-or-complex-setup-355l</guid>
      <description>&lt;p&gt;For months, I thought I knew where my users were coming from.&lt;/p&gt;

&lt;p&gt;I’d post in a subreddit, reply to a thread on X, drop a link in a community… then check my analytics.&lt;/p&gt;

&lt;p&gt;Google Analytics would tell me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Direct&lt;/li&gt;
&lt;li&gt;Social&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Which basically means 🤷🏽 not helpful at all.&lt;/p&gt;

&lt;p&gt;The result? I kept doubling down on channels that weren’t actually working, while ignoring the ones that were quietly bringing signups.&lt;/p&gt;

&lt;p&gt;In early-stage SaaS, a few weeks of guessing can be the difference between growing and giving up.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why I Didn’t Use Google Analytics
&lt;/h2&gt;

&lt;p&gt;For me, it came down to three big problems:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Setup overhead – too much bloat for a small side project.&lt;/li&gt;
&lt;li&gt;Privacy concerns – cookies, consent banners, tracking scripts I didn’t
feel great about adding.&lt;/li&gt;
&lt;li&gt;Vague reporting – "Direct" or Social isn't actionable when you need to
know exactly which post or link brought someone in.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I wanted something that was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dead simple to set up.&lt;/li&gt;
&lt;li&gt;Cookie-less and privacy-friendly.&lt;/li&gt;
&lt;li&gt;Laser-focused on the one question: “Where did this click come from?”&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  The Core Idea
&lt;/h2&gt;

&lt;p&gt;What if I created a unique link for every place I posted?&lt;br&gt;
That way, I could:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Redirect users to my site.&lt;/li&gt;
&lt;li&gt;Log exactly where they came from.&lt;/li&gt;
&lt;li&gt;Group those links into campaigns for quick comparison.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  The Build
&lt;/h2&gt;

&lt;p&gt;I kept the architecture simple:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stack&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Supabase PostgreSQL for storing links and click logs&lt;/li&gt;
&lt;li&gt;Next.js&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Database schema (simplified)&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;-- Links table
id | original_url | campaign_name | tag | click_count

-- Visits table
id | link_id | timestamp | referrer

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The redirect endpoint&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// pages/api/track/[id].js
import { supabase } from '../../lib/supabase'

export default async function handler(req, res) {
  const { id } = req.query
  await supabase.from('clicks').insert({ link_id: id, referrer: req.headers.referer })
  const { data } = await supabase.from('links').select('url').eq('id', id).single()
  res.redirect(data.url)
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No cookies. No personal data. Just a timestamp and referrer.&lt;/p&gt;




&lt;h2&gt;
  
  
  Privacy-First by Design
&lt;/h2&gt;

&lt;p&gt;Here’s what I decided NOT to do:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;❌ No cookies or localStorage.&lt;/li&gt;
&lt;li&gt;❌ No IP address logging.&lt;/li&gt;
&lt;li&gt;❌ No fingerprinting or hidden tracking.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead, I store only:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The link ID.&lt;/li&gt;
&lt;li&gt;The time it was clicked.&lt;/li&gt;
&lt;li&gt;The referrer (if available).
That’s it.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  The Result
&lt;/h2&gt;

&lt;p&gt;Within the first week of using this system, I found out:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;70% of my signups came from showcase on X.&lt;/li&gt;
&lt;li&gt;A channel I thought was working? 0 users.
Now, I double down on what’s actually driving results, no guesswork.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  From Side Project to Tool
&lt;/h2&gt;

&lt;p&gt;I ended up turning this into a simple SaaS called &lt;a href="https://go.reddimon.com/postone" rel="noopener noreferrer"&gt;Reddimon&lt;/a&gt; so other founders can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Track exactly which post, comment, or link brings them users.&lt;/li&gt;
&lt;li&gt;Do it without cookies or heavy setup.&lt;/li&gt;
&lt;li&gt;Focus only on marketing that works.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re tired of “Direct / Unknown” in your analytics, you might like it.&lt;/p&gt;

</description>
      <category>sideprojects</category>
      <category>startup</category>
      <category>analytics</category>
      <category>privacy</category>
    </item>
  </channel>
</rss>
