Start a run with one tap. Your bet goes into the tunnel.
How to play
DIG puts your virtual coin bet into the run and attempts the next level.
Every safe level raises the multiplier and the potential payout. Compact HUD multipliers are rounded and marked ≈.
BANK adds bet × the exact multiplier to your balance. The game rounds the visible coin total to two decimals; the math table provides four-decimal reference values while payouts use the unrounded internal multiplier. DIG DEEPER risks the entire unbanked payout.
The red cave-in chance rises every level. Cracks, dust and rumble warn you as the tunnel gets unstable. Level 8+ switches into deep-run slow motion.
Coins
Coins are virtual only and have no cash value. If you run out, use the free refill to keep playing.
Demo math
Target theoretical RTP: 96.5% This is one clearly marked target in the game configuration. Each multiplier is 0.965 ÷ cumulative survival probability, so the target stays the same at every bank point. The compact HUD rounds multipliers and marks them ≈; the table below shows four-decimal reference values. Payouts use the unrounded internal multiplier while visible coin totals are rounded to two decimals. Results vary in short play. This is a balanced prototype, not a certified real-money model.
Risk ladder
on every goldodd.com page.
Sends: pageview on load; on /games// pages also game_start,
a heartbeat every 30s, and game_end when the tab closes.
No cookies, no fingerprinting. Visitors with Do Not Track on send nothing. */
(function(){
"use strict";
if (navigator.doNotTrack === "1" || window.doNotTrack === "1") return;
var EP = "https://goldodd.com/api/collect";
var sid = "na";
try {
sid = sessionStorage.getItem("go_sid") || "";
if (!sid) {
sid = Math.random().toString(36).slice(2) + Date.now().toString(36);
sessionStorage.setItem("go_sid", sid);
}
} catch (e) {}
var device = /Mobi|Android|iPhone|iPad/i.test(navigator.userAgent || "") ? "mobile" : "desktop";
function send(type, game) {
var d = { type: type, path: location.pathname, ref: document.referrer || "",
session: sid, device: device };
if (game) d.game = game;
var body = JSON.stringify(d);
try { if (navigator.sendBeacon && navigator.sendBeacon(EP, body)) return; } catch (e) {}
try { fetch(EP, { method: "POST", headers: { "Content-Type": "application/json" },
body: body, keepalive: true }); } catch (e) {}
}
var m = location.pathname.match(/^\/games\/([^\/]+)/);
var game = m ? m[1] : null;
send("pageview");
if (game) {
send("game_start", game);
var hb = setInterval(function(){ send("heartbeat", game); }, 30000);
var done = false;
var end = function(){
if (done) return; done = true;
clearInterval(hb); send("game_end", game);
};
window.addEventListener("pagehide", end);
document.addEventListener("visibilitychange", function(){
if (document.visibilityState === "hidden") end();
});
}
})();