Office Party Demo Play Free Demo Slot

Live RTP

Office Party live RTP stats

Updated automatically using recent provider RTP data.

Base RTP
Provider: Last checked: Loading…
Last 24 hours
Last 7 days
Last 30 days
24h
7d
30d

Ready to try this game for real money? Casino bonuses are available just below.

Live RTP stats are available when JavaScript is enabled.

.ds-rtp-widget-horizontal{ width:100%; max-width:100%; margin:0 0 22px; padding:15px; border-radius:18px; background: radial-gradient(circle at top right, rgba(7,173,252,0.14), transparent 28%), linear-gradient(180deg,#0a2f7a 0%,#043aa7 100%); border:1px solid rgba(201,229,250,0.18); box-shadow:0 12px 28px rgba(4,58,167,0.22); color:#fff; font-family:Arial,sans-serif; box-sizing:border-box; }.ds-rtp-top{ display:flex; justify-content:space-between; gap:14px; align-items:flex-start; margin-bottom:12px; }.ds-rtp-badge{ display:inline-block; font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#043aa7; background:#c9e5fa; border-radius:999px; padding:6px 10px; margin-bottom:7px; }.ds-rtp-title-wrap h3{ margin:0 0 4px; font-size:21px; line-height:1.12; color:#fff; }.ds-rtp-sub{ margin:0 0 10px; color:rgba(255,255,255,.82); font-size:12px; }.ds-base-rtp-pill{ display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; background:rgba(201,229,250,0.14); border:1px solid rgba(201,229,250,0.24); color:#c9e5fa; font-size:13px; font-weight:700; }.ds-base-rtp-pill strong{ color:#fff; font-size:15px; }.ds-rtp-meta-top{ display:flex; flex-direction:column; gap:4px; min-width:190px; font-size:12px; line-height:1.3; color:rgba(255,255,255,.78); text-align:right; }.ds-rtp-meta-top strong{ color:#fff; font-weight:700; }.ds-rtp-main{ display:grid; grid-template-columns:1.08fr 1fr; gap:12px; align-items:stretch; margin-bottom:10px; }.ds-rtp-stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }.ds-rtp-stat-card{ background:rgba(255,255,255,0.08); border:1px solid rgba(201,229,250,0.14); border-radius:14px; padding:11px 9px; text-align:center; }.ds-rtp-label{ display:block; font-size:12px; color:rgba(255,255,255,0.76); margin-bottom:6px; }.ds-rtp-stat-card strong{ display:block; font-size:20px; line-height:1; color:#fff; }.ds-rtp-chart-side{ background:rgba(0,0,0,0.14); border:1px solid rgba(201,229,250,0.12); border-radius:14px; padding:11px; }.ds-mini-row{ display:grid; grid-template-columns:36px 1fr 66px; gap:8px; align-items:center; margin-bottom:9px; }.ds-mini-row:last-child{ margin-bottom:0; }.ds-mini-label{ font-size:12px; font-weight:700; color:rgba(255,255,255,0.82); text-transform:uppercase; }.ds-mini-track{ position:relative; height:13px; border-radius:999px; background:rgba(255,255,255,0.06); overflow:hidden; }.ds-mini-fill{ display:block; height:100%; min-width:8px; width:0%; border-radius:999px; transition:width .5s ease; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.10); }.ds-rtp-fill-day{ background:linear-gradient(90deg,#07adfc 0%,#287aed 100%); }.ds-rtp-fill-week{ background:linear-gradient(90deg,#ffd44d 0%,#f5a623 100%); }.ds-rtp-fill-month{ background:linear-gradient(90deg,#8ef06b 0%,#31c553 100%); }.ds-mini-value{ font-size:15px; font-weight:700; color:#fff; text-align:right; }.ds-live-rtp-text{ margin:6px auto 4px; max-width:700px; font-size:13px; line-height:1.45; color:#e6f2ff; text-align:center; }.ds-rtp-bonus-cta{ margin:2px 0 0; font-size:13px; line-height:1.45; color:#c9e5fa; font-weight:700; text-align:center; }.ds-seo-summary{ position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; white-space:nowrap!important; }.ds-noscript{ margin-top:8px; font-size:12px; color:rgba(255,255,255,.78); }@media(max-width:980px){ .ds-rtp-main{grid-template-columns:1fr;} .ds-rtp-top{flex-direction:column;} .ds-rtp-meta-top{text-align:left;min-width:auto;} }@media(max-width:700px){ .ds-rtp-widget-horizontal{ padding:14px; border-radius:16px; margin:0 0 20px; }.ds-rtp-title-wrap h3{ font-size:19px; }.ds-base-rtp-pill{ font-size:12px; padding:7px 11px; }.ds-base-rtp-pill strong{ font-size:14px; }.ds-rtp-stats{ grid-template-columns:1fr; }.ds-rtp-stat-card strong{ font-size:22px; }.ds-mini-row{ grid-template-columns:34px 1fr 58px; }.ds-mini-track{ height:12px; }.ds-mini-value{ font-size:14px; }.ds-live-rtp-text{ max-width:none; margin:8px 0 4px; font-size:11px; line-height:1.45; text-align:center; }.ds-rtp-bonus-cta{ font-size:12px; } }(function(){ const widget = document.getElementById(“ds-rtp-widget”); if(!widget) return;const PROVIDER = (widget.dataset.provider || “”).trim(); const GAME_TITLE = (widget.dataset.game || “”).trim();const API_BASE = “https://rtp.node-25.xyz/games/?game_provider=” + encodeURIComponent(PROVIDER) + “&page=”; const MAX_PAGES_TO_CHECK = 50; const MIN_RTP = 80; const MAX_RTP = 135;function setText(id,value){ const el = widget.querySelector(“#” + id); if(el) el.textContent = value; }function setTextAll(selector,value){ widget.querySelectorAll(selector).forEach(el => { el.textContent = value; }); }function formatPct(value){ const num = Number(value); if(!Number.isFinite(num)) return “–“; return num.toFixed(2) + “%”; }function barWidth(value){ const num = Number(value); if(!Number.isFinite(num)) return “0%”; const clamped = Math.max(MIN_RTP, Math.min(num, MAX_RTP)); return ((clamped – MIN_RTP) / (MAX_RTP – MIN_RTP)) * 100 + “%”; }function setBar(barId,valueId,value){ const bar = widget.querySelector(“#” + barId); const label = widget.querySelector(“#” + valueId); const width = barWidth(value);if(bar){ bar.style.width = width; if(Number(value) > 0 && width === “0%”){ bar.style.width = “8px”; } }if(label) label.textContent = formatPct(value); }function updateCheckedTime(){ const now = new Date(); setText( “ds-last-checked”, now.toLocaleString(“en-GB”,{ day:”2-digit”, month:”short”, year:”numeric”, hour:”2-digit”, minute:”2-digit” }) ); }async function fetchPage(page){ const res = await fetch(API_BASE + page,{cache:”no-store”}); if(!res.ok) throw new Error(“HTTP ” + res.status + ” on page ” + page); return res.json(); }function getItems(payload){ if(Array.isArray(payload)) return payload; if(payload && Array.isArray(payload.results)) return payload.results; return []; }async function findGameAcrossPages(){ for(let page = 1; page item && typeof item.title === “string” && item.title.trim().toLowerCase() === GAME_TITLE.toLowerCase() );if(game) return {game,page}; } return null; }function updateLiveText(game){ const desktopLiveText = `${GAME_TITLE} live RTP is currently ${formatPct(game.rtp_day)} over the last 24 hours, compared with a ${formatPct(game.rtp)} base RTP. The 7-day RTP is ${formatPct(game.rtp_week)} and the 30-day RTP is ${formatPct(game.rtp_month)}.`;const mobileLiveText = `24h RTP is ${formatPct(game.rtp_day)} vs ${formatPct(game.rtp)} base RTP. 7d RTP is ${formatPct(game.rtp_week)}, 30d RTP is ${formatPct(game.rtp_month)}.`;setText( “ds-live-rtp-text”, window.innerWidth <= 700 ? mobileLiveText : desktopLiveText ); }async function loadRTP(){ try{ if(!PROVIDER || !GAME_TITLE){ setText("ds-last-checked","Missing setup"); setText("ds-live-rtp-text","Add data-provider and data-game to the widget."); return; }setTextAll(".ds-game-name", GAME_TITLE); setTextAll(".ds-provider-name", PROVIDER);const found = await findGameAcrossPages();if(!found){ setText("ds-last-checked","Game not found"); setText("ds-live-rtp-text","Live RTP data is currently unavailable for this game."); return; }const game = found.game;setText("ds-rtp-day", formatPct(game.rtp_day)); setText("ds-rtp-week", formatPct(game.rtp_week)); setText("ds-rtp-month", formatPct(game.rtp_month));setText("ds-summary-day", formatPct(game.rtp_day)); setText("ds-summary-week", formatPct(game.rtp_week)); setText("ds-summary-month", formatPct(game.rtp_month)); setText("ds-base-rtp", formatPct(game.rtp)); setText("ds-summary-base", formatPct(game.rtp));setBar("ds-bar-day","ds-bar-day-value",game.rtp_day); setBar("ds-bar-week","ds-bar-week-value",game.rtp_week); setBar("ds-bar-month","ds-bar-month-value",game.rtp_month);updateLiveText(game); updateCheckedTime(); }catch(err){ console.error("Universal RTP widget error:", err); setText("ds-last-checked","Update failed"); setText("ds-live-rtp-text","Live RTP data is temporarily unavailable."); } }loadRTP(); setInterval(loadRTP, 6 * 60 * 60 * 1000); window.addEventListener("resize", loadRTP); })();

Casino Bonuses

Office Party Slot
Provider Shady Lady
Reels5
Rows5
Paylines3,125
Bonus Rounds5
Bet Range0.10 - 100
VolatilityHigh
Max Win20,000x
Bonus BuyYes
RTP96.51%
Our Rating7.5
Members Rating9.0

Latest Slots

Office Party Slot Shady Lady
Office Party Slot Shady Lady

Pros

  • A game with an adult theme, which are few and far between in iGaming.
  • Multiple enhanced bet and bonus buy options.
  • A fairly unique bonus round, which makes a change from a standard free spins round.

Cons

  • Not all players appreciate games with a more adult theme.
  • If you're a player who loves free spin bonuses, this isn't the game for you.

Office Party Slot Review Final Thoughts

Shady Lady might be new to the iGaming scene in 2025, but the studio has wasted no time in getting some early releases out to show the world what they can do, with Office Party being the 4th creation to come out of Shady Lady HQ thus far. If this is your first encounter with the developer and you want to experience those previous releases, you can try out Oops, Brainwashed, and Devil's Finger to get yourself up to speed.

Okay, back to today's game, and Office Party can certainly be put into the category of adult-themed, with the images/animations and language used throughout clearly targeting those seeking a slot that differs from the norm. I guess you could think of it as Shady Lady's answer to Nine to Five, but with the breaks off.

As for the gameplay, the base game features a number of wild symbols that can land and be activated along with special symbols that whack the Piñata, where smashing it to bits is key to triggering the bonus round. This is then unique in itself, with jars of multipliers up for grabs which can be enhanced further by the symbols at the top of the screen, with the aim again to smash the Piñata and progress through the levels where the bigger prizes in the game can be won. Factor in the enhanced betting options and bonus buys, and you've got another action-packed title which is sure to divide opinion.

Want to try it for yourself? Then go ahead and take our free demo slot for a spin.

7.5

Good

Biggest Wins

x1079
Office
Office Party18/04/2026 • Naruto uzumaki

Author Bio

Jim Donaghue

Article by Jim Donaghue

About Jim Donaghue

Join the conversation (1 Comments)

  1. This game is unique, but it gives off a rather chaotic impression. The visuals are bold and distinctive, giving it a different appeal from other slots, but that also means it’s a bit cluttered and can be tiring on the eyes.

    The gameplay itself is interesting, and big wins are possible (as shown), but the volatility is quite high. When you win, the payouts are huge, but when you lose, it can be very long.

    It’s suitable for people who enjoy exciting gameplay, but not recommended for those seeking a stable and calming game.

Log in to share your thoughts

Not made an account yet? Register here to join the conversation.