<?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: Karanga Oliver</title>
    <description>The latest articles on DEV Community by Karanga Oliver (@vrposter57).</description>
    <link>https://dev.to/vrposter57</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4151172%2F13a8be7b-023c-46c5-8a5b-82b3d75bd94f.png</url>
      <title>DEV Community: Karanga Oliver</title>
      <link>https://dev.to/vrposter57</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vrposter57"/>
    <language>en</language>
    <item>
      <title>A traffic exchange found my referral race at 5 AM. It earned zero credits.</title>
      <dc:creator>Karanga Oliver</dc:creator>
      <pubDate>Thu, 22 Oct 2026 14:02:21 +0000</pubDate>
      <link>https://dev.to/vrposter57/a-traffic-exchange-found-my-referral-race-at-5-am-it-earned-zero-credits-2df6</link>
      <guid>https://dev.to/vrposter57/a-traffic-exchange-found-my-referral-race-at-5-am-it-earned-zero-credits-2df6</guid>
      <description>&lt;p&gt;Around 5 AM Central this morning, my referral race got its first taste of traffic-exchange traffic. Here is what happened, and why the scoreboard did not move.&lt;/p&gt;

&lt;h2&gt;
  
  
  What showed up
&lt;/h2&gt;

&lt;p&gt;Within about one hour:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;5 visitors, all from Malaysia&lt;/li&gt;
&lt;li&gt;all on desktop Firefox&lt;/li&gt;
&lt;li&gt;none with a referrer&lt;/li&gt;
&lt;li&gt;3 sign-ups&lt;/li&gt;
&lt;li&gt;one link dropped on the homepage board, and it pointed to an AdShare traffic exchange (r.adsha.re)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That pattern is what traffic exchanges look like: people or scripts visit sites to earn credits, then spend those credits pushing their own link somewhere new.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it got them
&lt;/h2&gt;

&lt;p&gt;Two things:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The free 15-minute "Just entered" spot on the homepage board. Every new site gets that, no matter who drops it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zero referral credits.&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The chip expired on schedule and the leaderboard stayed exactly where it was.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why it earned nothing: the credit model
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.viralrefer.app" rel="noopener noreferrer"&gt;ViralRefer&lt;/a&gt; only gives a referral credit when a &lt;strong&gt;unique friend opens your link and taps "Get my link."&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That one rule filters out most of the cheap tricks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Visits don't count.&lt;/strong&gt; Loading the page, even many times, earns nothing.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Copies don't count.&lt;/strong&gt; Copying your own link is not a referral.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Self-taps don't count.&lt;/strong&gt; Tapping your own link from your own device is ignored.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Only a new, unique person taking a real action counts.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A traffic exchange is built to make page views, so it hits a wall here. You can send all the visits you want, but visits are not what gets scored.&lt;/p&gt;

&lt;p&gt;I wrote about the reasoning behind this in an earlier post: &lt;a href="https://dev.to/vrposter57/i-built-a-referral-leaderboard-that-ignores-page-views-heres-the-credit-model-19e1"&gt;I built a referral leaderboard that ignores page views. Here's the credit model&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I took from it
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Give the welcome freely, gate the rewards.&lt;/strong&gt; The 15-minute "Just entered" chip costs me nothing, and it is fine if anyone gets it. The rewards that matter only come from real referrals.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Score actions, not traffic.&lt;/strong&gt; If your leaderboard counts clicks or views, someone will find a way to farm them. Count the thing you actually want.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Patterns are easy to spot when you log a few basics.&lt;/strong&gt; Country, browser and referrer were enough to see this was one burst from one source.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;If you want to see how a referral race works when only real friends count, grab a free link at &lt;a href="https://www.viralrefer.app" rel="noopener noreferrer"&gt;viralrefer.app&lt;/a&gt;. No signup, no email. Add your site, send your link to people you know, and watch where you land.&lt;/p&gt;

&lt;p&gt;Have you had traffic-exchange or bot traffic hit your side project? How did you handle it?&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>sideprojects</category>
      <category>security</category>
    </item>
    <item>
      <title>I built a free referral race that puts your site on my homepage</title>
      <dc:creator>Karanga Oliver</dc:creator>
      <pubDate>Mon, 19 Oct 2026 12:33:36 +0000</pubDate>
      <link>https://dev.to/vrposter57/i-built-a-free-referral-race-that-puts-your-site-on-my-homepage-f45</link>
      <guid>https://dev.to/vrposter57/i-built-a-free-referral-race-that-puts-your-site-on-my-homepage-f45</guid>
      <description>&lt;p&gt;Every side project I have launched hit the same wall. The site works, it looks fine, and then nobody shows up. The usual advice is "share it with your friends", but when you do, you get a polite thumbs up and that is about it.&lt;/p&gt;

&lt;p&gt;So I tried to fix that one problem, and the result is ViralRefer, which launched on TinyLaunch today.&lt;/p&gt;

&lt;h2&gt;
  
  
  The idea
&lt;/h2&gt;

&lt;p&gt;What if sharing your link was a game with a visible prize? Your friends would have a reason to tap it, and you would have a reason to keep sending it.&lt;/p&gt;

&lt;p&gt;ViralRefer is a free referral race. The prize is not cash. It is space on the ViralRefer homepage itself.&lt;/p&gt;

&lt;h2&gt;
  
  
  How the race works
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;You tap &lt;strong&gt;Get my referral link&lt;/strong&gt;. No signup and no email. You get a code that looks like &lt;code&gt;VIRAL-XXXXXXX&lt;/code&gt; in about 30 seconds.&lt;/li&gt;
&lt;li&gt;You paste your website into the Site Drop slot. It appears on the homepage as a 15 minute "Just entered" chip.&lt;/li&gt;
&lt;li&gt;You send your link anywhere: texts, group chats, social posts.&lt;/li&gt;
&lt;li&gt;When a friend opens your link and taps &lt;strong&gt;Get my link&lt;/strong&gt;, that counts as a verified referral and your site climbs the ladder:

&lt;ul&gt;
&lt;li&gt;1 verified friend: a 1 hour &lt;strong&gt;Rising&lt;/strong&gt; card&lt;/li&gt;
&lt;li&gt;2 friends: your site in this week's &lt;strong&gt;text line&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Board #2 and #3: the &lt;strong&gt;Challenger&lt;/strong&gt; strip under the banner&lt;/li&gt;
&lt;li&gt;This week's #1 with 3 friends: a &lt;strong&gt;7 day homepage banner&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Decisions I am glad I made
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;No accounts.&lt;/strong&gt; Every signup form loses people. Since the only thing a racer needs is a link and a place to put their website, I skipped accounts completely.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Only one action counts.&lt;/strong&gt; A referral counts only when a friend taps "Get my link" on your link. Page visits and copied links never count. That one rule removes most of the ways a leaderboard gets gamed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Traffic exchanges are off by default.&lt;/strong&gt; Visits that come through traffic exchange style pages do not write a verified credit unless I deliberately turn that on, and it is off.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rewards at every rung.&lt;/strong&gt; If only #1 wins, everyone else quits on day one. Giving the first rung a 15 minute spot and the first verified friend a 1 hour card means people see their site on the page right away, which is the moment that makes them want to send the link again.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Weekly reset.&lt;/strong&gt; The board runs on a UTC week, so there is always a fresh race and a new #1 to chase.&lt;/p&gt;

&lt;h2&gt;
  
  
  The stack
&lt;/h2&gt;

&lt;p&gt;The whole thing runs on Cloudflare Workers with static assets served by the same Worker. It is a small setup, which matters a lot when you are one person maintaining it.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I would love feedback on
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Is the ladder clear the first time you land on the homepage?&lt;/li&gt;
&lt;li&gt;Would you send your link to a friend? If not, what is stopping you?&lt;/li&gt;
&lt;li&gt;What reward would make the race more fun?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you want to try it, grab a link at &lt;a href="https://viralrefer.app" rel="noopener noreferrer"&gt;viralrefer.app&lt;/a&gt;. It is live on TinyLaunch today too: &lt;a href="https://tinylaunch.com/launch/22546-viralrefer" rel="noopener noreferrer"&gt;tinylaunch.com/launch/22546-viralrefer&lt;/a&gt;. If you like it, an upvote there helps a lot.&lt;/p&gt;

&lt;p&gt;Thanks for reading. I am happy to answer questions in the comments.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjidgcjkxvpnd4n5q44oi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjidgcjkxvpnd4n5q44oi.png" alt=" " width="800" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>cloudflare</category>
      <category>sideprojects</category>
    </item>
    <item>
      <title>I built a referral leaderboard that ignores page views. Here's the credit model.</title>
      <dc:creator>Karanga Oliver</dc:creator>
      <pubDate>Wed, 30 Sep 2026 01:55:58 +0000</pubDate>
      <link>https://dev.to/vrposter57/i-built-a-referral-leaderboard-that-ignores-page-views-heres-the-credit-model-19e1</link>
      <guid>https://dev.to/vrposter57/i-built-a-referral-leaderboard-that-ignores-page-views-heres-the-credit-model-19e1</guid>
      <description>&lt;p&gt;Most referral leaderboards count the wrong thing. They count clicks or visits, and the moment a visit is worth something, somebody points a traffic tool at it and the board is over.&lt;/p&gt;

&lt;p&gt;I wanted to see what a leaderboard looks like if a visit is worth nothing. The result is ViralRefer, a free referral race. Here's the credit model and the trade-offs behind it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The one rule
&lt;/h2&gt;

&lt;p&gt;You get a referral link (a code like VIRAL-XXXXXXX) in about 30 seconds, with no email and no signup. You only move up when a friend opens your link &lt;strong&gt;and taps "Get my link" themselves&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Things that do not count:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;opening the link, or refreshing it&lt;/li&gt;
&lt;li&gt;copying the link or viewing the QR code&lt;/li&gt;
&lt;li&gt;tapping your own link&lt;/li&gt;
&lt;li&gt;the same friend tapping twice (still one credit)&lt;/li&gt;
&lt;li&gt;traffic-exchange impressions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That list is the whole product. Everything else is presentation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why "the friend does the same action you did"
&lt;/h2&gt;

&lt;p&gt;A credit has to cost the referrer something that's hard to fake at scale. An email address used to be that, but email walls kill the funnel, and throwaway inboxes are cheap. A person choosing to take the same small action you took is a better signal, and it keeps the funnel to one tap for everyone.&lt;/p&gt;

&lt;p&gt;The trade-off: growth is slower. You can't blast a link and watch a number go up. I think that's the point.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keep "reach" and "credit" separate
&lt;/h2&gt;

&lt;p&gt;I still wanted traffic-exchange users to be able to see the site, so there's a separate explainer page for rotators. Opening it never writes a credit, and a "Get my link" that arrives tagged as traffic-exchange traffic gets a share kit but no verified credit by default. Reach and credit are separate counters, so neither one can inflate the other.&lt;/p&gt;

&lt;h2&gt;
  
  
  The reward is attention, not money
&lt;/h2&gt;

&lt;p&gt;There's no cash prize, no wallet and no payment. What you win is your website on the homepage:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Just entered: 15 minutes, as soon as you paste your site&lt;/li&gt;
&lt;li&gt;Rising: 1 hour, after 1 verified friend&lt;/li&gt;
&lt;li&gt;Week text line: 2 verified friends&lt;/li&gt;
&lt;li&gt;Challenger strip: board #2 or #3&lt;/li&gt;
&lt;li&gt;Banner: this week's #1 (not the owner) with 3 friends claims a 7-day homepage banner&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The operator can sit on the board but can't claim a prize. If the house can win, nobody else should bother. The board resets every UTC week.&lt;/p&gt;

&lt;h2&gt;
  
  
  Measuring channels without a tracking SDK
&lt;/h2&gt;

&lt;p&gt;Every link I share carries a small tag, for example &lt;code&gt;?src=devto&amp;amp;camp=freepack&lt;/code&gt;. The site lowercases it, keeps only &lt;code&gt;[a-z0-9_-]&lt;/code&gt;, caps it at 40 characters and carries it through to the join, so the owner view can show lands and joins per channel. No third-party tracker needed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Stack
&lt;/h2&gt;

&lt;p&gt;Cloudflare Pages with Functions, and KV for state. There are 26 language variants of the homepage.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I'd like feedback on
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Is "only a friend's tap counts" clear within 10 seconds of landing?&lt;/li&gt;
&lt;li&gt;Is a homepage slot for your site enough to make you send a link to 3 friends?&lt;/li&gt;
&lt;li&gt;What abuse case am I not seeing?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It's free and open worldwide (18+). Disclosure: I built it and run it. The board is new, so #1 is open this week:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.viralrefer.app/?src=devto&amp;amp;camp=freepack" rel="noopener noreferrer"&gt;https://www.viralrefer.app/?src=devto&amp;amp;camp=freepack&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Drafted with AI assistance and edited by me.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>javascript</category>
      <category>cloudflare</category>
    </item>
  </channel>
</rss>
