Skip to main content

Spin the Wheel of Names - Free Random Name Picker & Wheel Spinner

Enter a list of names, spin the wheel, and get a provably fair random pick.

Run workplace raffles and prize draws, audience giveaways, classroom picks, and everyday decisions with a wheel spinner built for fair, verifiable results.

How the Wheel Spin Works

1. Add your names. Type or paste a list, or upload a CSV with thousands of entries. The wheel shows up to 250 segments; every entry stays in the draw no matter how large your list is.

2. Spin the wheel. Click the wheel or press Space. For large lists the winner is selected on our servers with a cryptographically secure random number generator over the complete list, never just the visible segments.

3. Announce the winner. Auto-remove past winners so nobody wins twice, pick multiple winners in one run, and download a certificate that records exactly how each draw was made.

Free online wheel spinner with a list of names loaded, ready to spin the wheel and pick a random winner

A Free Online Wheel Spinner for Any Occasion

Workplace raffles and prize draws

Upload your entry list as a CSV, spin the wheel of names in front of the team, and hand out prizes with a downloadable record of every draw. Auto-remove winners keeps repeat wins out, and Teams mode splits groups fairly.

Giveaways, contests, and streams

Use the wheel as a giveaway winner picker your audience can watch live: import entries, spin, and publish results your community can trust. Run contest draws straight from Discord with our bot, or pick winners from social media comments with the built-in comment picker.

Classrooms and groups

Use the name wheel to call on students fairly, assign presentation order, or split a class into teams. Save your class list once and spin the wheel all term.

Everyday decisions

Where to eat, who goes first, which movie tonight: put the options on the spinner wheel and let the spin decide. Try the yes no wheel for the simplest calls of all.

A Random Winner Generator for Giveaways, Contests, and Raffles

Running a giveaway or sweepstakes? The wheel doubles as a random winner picker: load your entries (typed, pasted, or a CSV of thousands), spin once per prize, and let auto-remove keep past winners out of later draws. The raffle generator workflow handles multi-entry lists too, so participants with more tickets get proportionally better odds.

Every draw can be backed up with a downloadable certificate showing the pool size, the selection method, and each winner's exact odds, which is what separates a trustworthy contest from a "trust me" one. For community giveaways, the Discord bot and comment picker bring the draw to where your entrants already are.

Provably Fair: How Our Random Selection Works

Server-side cryptographic selection

Winners on large wheels are chosen on our servers using a cryptographically secure random number generator over your complete list, with removed winners excluded from the eligible pool. The wheel animation is the show; the math is the draw.

Every entry counts

Whether your list has 10 names or 1,000,000, every entry has exactly its fair share of the odds. Weighted entries are honored precisely, and each spin records the pool size and the winner's exact probability at the moment of selection.

Auditable results

Download a result certificate for any draw: it records each winner, the selection method actually used, the pool size, and the odds. Spin histories are saved to your account so results can be checked later.

Every Feature You Need for Fair Draws

Everything you need for random selections, raffles, team events, and classroom activities.

🎯 Smart Name Selection

  • Animated spinning name wheel with three speed presets (Rapid, Standard, Long), roughly 2 to 30 seconds
  • Multi-winner selection (pick multiple winners at once)
  • Weighted entries: assign different weights to adjust win probability (Pro plan)
  • Teams Mode: organize names into teams and spin to pick a winning team
  • Countdown Timer: auto-spin after 3-60 second countdown (perfect for live events)
  • Auto-Remove Winners: on CSV lists every entry of the winning name is removed (all duplicate tickets); on typed lists only the single landed entry is removed
  • Winner export (download as CSV/PDF, copy to clipboard)
  • Keyboard shortcuts (Spacebar to spin, Shift+C for countdown timer, Enter to confirm, Esc to close)
  • CSV file upload for bulk imports (free account required; up to 1 million names per wheel on Pro)
  • Manual entry with quick editing and removal
  • Sort names alphabetically with one click
  • Data import for automated entry management

🎨 Complete Customization

  • 1,018 Google Fonts for wheel text (Pro plan)
  • 40 pre-designed color themes (Vibrant, Pastels, Rainbow, Neon, Ocean, Sunset, and more)
  • Custom color picker for individual segments
  • Custom text & background colors (Pro plan)
  • Background images & color overlays for branded experiences (Pro plan)
  • Center button customization: text, background color & text color (Pro plan)
  • Needle customization: 4 styles (Classic, Modern, Arrow, Pointer) with custom colors (Pro plan)
  • Wheel title & description fields for context
  • Adjustable spin speed and easing animations
  • 6 selectable sound effects plus applause, with volume control

🏆 Winner Management

  • Automatic winner tracking and history
  • Dedicated winners page with shareable links
  • Winner Certificate: downloadable PDF proof of fair selection (Pro plan)
  • Export winners to CSV for record keeping
  • Remove winners from the pool after selection
  • Bulk winner actions (clear all, reset, export)

💼 Professional Features

  • Save wheels to your account dashboard (3 on Free, unlimited on Pro)
  • Full-screen presentation mode (Live Mode) to spin the wheel for audience engagement
  • Embed wheels on your website with a simple code snippet
  • Customizable winner display fields for detailed winner information
  • Real-time sync across devices for seamless management
  • Share wheels publicly with a simple link

🎉 Visual Effects

  • Confetti celebration animation for winners
  • Customizable applause and cheering sounds
  • Professional display options for presentations
  • Volume control for all audio effects

📊 Advanced Capabilities

  • Real-time sync across devices
  • Automatic save with browser storage backup
  • Public sharing for winners page
  • Mobile-responsive design for all devices
  • Offline capability with local storage (for wheels of 250 names or fewer)

🔌 API Integration

  • RESTful API for programmatic access (all plans, free account required)
  • Create, update, and delete wheels via API
  • Trigger spins and retrieve winner data programmatically
  • Comprehensive API documentation with code examples
  • Support for JavaScript, Python, PHP, Ruby, Go, and cURL
  • No published hard rate limits: API usage is subject to fair use
  • API key management with security controls
  • Simple Bearer token authentication
  • Ideal for automation, custom integrations, and third-party apps

🤖 Wheel Picker Discord Bot

  • Spin wheels directly in your Discord server
  • /spin members - Pick from server members (filter by role)
  • /spin custom - Spin with your own comma-separated entries
  • /spin reactions - Pick from users who reacted to a message
  • /spin voice - Pick from members in a voice channel
  • Animated GIF wheel spins displayed in Discord
  • 5 color themes: Uplup, Vibrant, Pastel, Sunset, Ocean
  • Self-hosted and open source on GitHub
  • Optional Uplup API integration for saved wheels
  • Perfect for community raffles and game nights

Total Usage

224
Wheel Spins
(past 24h)
3,583
Names Added
(past 24h)
224
Wheels Created
(past 24h)

Join hundreds of thousands making random selections fair and fun! 🎡

🎉 Free to use, no ads, generous limits - upgrade as you grow!

Scale as You Grow

From 100 names (Free) to 1 million names (Pro $29/mo)

CSV Upload

Import names from CSV files instantly

Custom Backgrounds

Upload your own background images (Pro)

Save Your Wheels

3 saved wheels free, unlimited on Pro

Share Results

Share winner pages with anyone

Full History

Access complete spin history forever

API Access

Programmatic control with REST API

API Keys

Secure authentication for your integrations

Wheel Picker Discord Bot

Spin wheels directly in your Discord server

Simple Pricing

Free

$0
Forever free
  • 100 names per wheel
  • 10 spins per wheel
  • 3 saved wheels
  • Multi-winner selection (up to 10)
  • 2 teams (team mode)
  • Countdown Timer (auto-spin)
  • Prevent duplicate winners
  • CSV import
  • Winner export (CSV/PDF)
  • Embed wheel on your website
  • Wheel Picker Discord bot integration
  • No ads, no credit card
Get Started Free
UNLIMITED

Pro

$29
per month
  • 1 million names per wheel
  • Unlimited saved wheels
  • Unlimited spins
  • Multi-winner selection
  • Weighted entries (adjust win probability)
  • Result certificates (proof of fair selection)
  • Unlimited teams (team mode)
  • Countdown Timer (auto-spin)
  • CSV upload for up to 1 million names
  • Custom backgrounds & fonts
  • Priority support
  • Embed wheel on your website
  • Full REST API access

Need forms or quizzes? View all plans

Trusted by 10,000+ Leading Companies

Join industry leaders who use Uplup to engage millions of users worldwide

AmazonWalmartBank of AmericaGoldman SachsShopifyUnited AirlinesIKEASonyTikTokADPInstacartCharles SchwabCleveland ClinicAbbottJetBlueAon
AmazonWalmartBank of AmericaGoldman SachsShopifyUnited AirlinesIKEASonyTikTokADPInstacartCharles SchwabCleveland ClinicAbbottJetBlueAon
AmazonWalmartBank of AmericaGoldman SachsShopifyUnited AirlinesIKEASonyTikTokADPInstacartCharles SchwabCleveland ClinicAbbottJetBlueAon

Perfect for Every Occasion

🎓

Education

Ad-free wheel of names for student selection, group assignments, and making learning interactive. Perfect for teachers, classrooms, schools, and universities.
🏢

Business

Use our wheel spinner for corporate raffles, employee drawings, and team building activities. Perfect for sales incentives, trade show prize drawings, and employee recognition programs.
🎉

Events

Spin the wheel to bring excitement to conferences, fundraisers, and social media campaigns. Great for door prizes, wedding games, and making any gathering more engaging.
🎮

Gaming & Streaming

Twitch streamers and YouTubers use our name picker for viewer raffles and sub drawings. Perfect for game night decisions, tournament brackets, and choosing random challenges.
🎁

Social Media Drawings

Instagram, TikTok, Facebook, YouTube creators and more use our name picker for raffles and drawings. Simply input participant names and spin the wheel to select winners transparently.
🎄

Holiday & Family

Pick who goes first, choose the movie tonight, or select prize winners at holiday parties. Make family decisions fair with our spinning wheel - from chore assignments to game night picks.
💝

Charity Raffles

Let the wheel picker choose nonprofit fundraiser winners and charity auction recipients. Transparent winner selection builds trust with donors and supporters.

Sports & Teams

Select team captains, determine batting order, or pick lane assignments. Fair selection for tournament brackets, practice partners, and MVP voting.
🍴

Restaurants & Retail

Customer loyalty drawings, employee of the month selection, and shift assignments. Pick daily specials, feature items, or reward program winners.
🎯

Decision Making

Can't decide? Let the wheel choose! Our random picker helps with restaurants, vacation spots, or weekend activities. Eliminate decision fatigue with a fun, random spin.
🎪

Real Estate & Auctions

Open house prize drawings and property tour order selection. Use our name wheel for auction winner picks and vendor booth assignments at trade shows.

Virtually Anything!

Our wheel of names works for any random selection need you can imagine. From picking karaoke singers to choosing presentation order - spin the wheel and let fate decide!

Frequently Asked Questions

Everything you need to know about our Random Name Picker tool

A Random Name Picker is a professional digital wheel of names that randomly selects names from your list using a visually engaging spinning wheel. Perfect for raffles, drawings, and classroom activities, this name wheel ensures fair and unbiased selection with features like CSV import, winner tracking, and customizable animations.
Yes! The Random Name Picker is free with no ads. Create a free account to unlock 100 names per wheel, 10 spins per wheel, CSV import, and 3 saved wheels, all completely ad-free. Need more? Upgrade to Pro for just $29/month to get up to 1 million names per wheel, unlimited spins, unlimited saved wheels, plus custom backgrounds and winner certificates!
You can import names three ways: 1) Upload a CSV file for bulk imports (just create a free account; Pro supports up to 1 million names), 2) Copy and paste from spreadsheets or documents, or 3) Type names directly with auto-save.
Yes. The wheel works as a giveaway winner picker and raffle generator: import your entry list (CSV supported), spin once per prize, and turn on Auto-Remove Winners so nobody wins twice. Each draw can produce a downloadable certificate recording the selection method and every winner's odds, and the Discord bot and comment picker cover community giveaways where your entrants already are.
Absolutely! Create a free account to save up to 3 wheels to the cloud. Your name wheel configurations sync across all devices, include full settings preservation, and maintain complete winner history. Need more? Upgrade to Pro for unlimited saved wheels!
Extensive customization includes: 40 pre-designed color themes, custom colors for each segment, background image uploads, 6 selectable sound effects plus applause with volume control, three spin speed presets (Rapid, Standard, Long) ranging from roughly 2 to 30 seconds, custom spin easing animations, confetti effects, and full-screen presentation mode to spin the wheel for live audiences.
Each wheel of names gets a dedicated, shareable winners page showing all selected winners with timestamps. Features include public sharing URLs, automatic winner tracking, export to CSV, social media sharing buttons, and beautiful celebration animations. Perfect for transparent raffle results!
Yes! Create a free account to access complete activity history showing all spins, winner selections, and changes. Track when wheels were created, modified, and used. Export detailed reports for compliance and record-keeping. View statistics like total spins, unique participants, and selection patterns.
Data import lets you pull names into your wheel from various sources. Names can be imported from CSV files, comment pickers, or other integrated tools. Everything updates in real-time, making it easy to manage large participant lists for raffles and drawings!
CSV upload handles large files with intelligent processing. Small files load instantly, large files use optimized backend processing, and the system preserves metadata columns for advanced filtering. CSV upload just requires a free account, and the Pro plan ($29/month) supports up to 1 million names per wheel.
Weighted Entries (Pro plan feature) lets you assign different weights to names, adjusting their probability of being selected. For example, if you give one name a weight of 3 and another a weight of 1, the first name is 3x more likely to win. The wheel slices automatically resize to reflect the weighted probabilities. Perfect for: loyalty rewards (more entries for frequent customers), tiered raffles (VIP participants get better odds), fair adjustments (compensate for different group sizes), and gamification (reward engagement levels). You can adjust weights using +/- buttons, and the system shows real-time probability percentages for each entry.
Teams Mode lets you organize names into teams and spin to select a winning team instead of an individual. Perfect for group competitions, team-based activities, or classroom projects! Free accounts get 2 teams, while Pro plan users enjoy unlimited teams. Features include: drag-and-drop team building, custom team names, color-coded teams on the wheel, and team member display when a team wins.
The Countdown feature lets you schedule an automatic spin after a configurable countdown (3, 5, 10, 15, 30, or 60 seconds). Perfect for live events, streams, and presentations where you want to build anticipation! Click 'Start Countdown' or press 'Shift+C' on your keyboard to begin. A visual overlay appears on the wheel showing the countdown, and you can cancel anytime by pressing 'Esc' or clicking 'Cancel'. When the countdown reaches zero, the wheel automatically spins.
Yes! You can embed your saved wheel on any website using a simple code snippet. Click the 'Embed' button in the navigation bar to get the embed code. The embedded wheel is fully interactive: visitors can spin it and see winners. It automatically resizes to fit your page and includes a 'Built with Uplup' link. This feature is free for all users with a saved wheel!
The Winner Certificate (Pro plan feature) generates a downloadable PDF that provides cryptographic proof of fair and random selection. Each certificate includes a unique certificate ID, SHA-256 hash for tamper detection, and a detailed technical audit log. The audit log captures the exact state at each selection: pool size, probability percentage, weighted mode status, and timestamp. This means if you pick 5 winners with equal weights, then enable weighted mode for the next 3, the certificate accurately reflects each winner's actual odds at the moment they were selected. Ideal for regulatory compliance, legal drawings, HR selections, and anywhere you need verifiable proof that the selection was truly random and unbiased.

The Random Name Picker wheel uses a fully client-side, transparent, and auditable winner selection process. This documentation details exactly how winners are selected to ensure complete fairness and transparency.

1. Core Principles

1

All Names Included

Every single name in your list has an equal chance of being selected, regardless of how many names are displayed on the wheel.

2

Client-Side Selection

Winner selection happens entirely in your browser using cryptographically secure random number generation.

3

Verifiable Process

The selection algorithm is open, auditable, and can be independently verified.

2. Technical Implementation

The winner selection uses the Web Crypto API's crypto.getRandomValues()function, which provides cryptographically strong random values suitable for cryptographic operations.

Random Number Generation

// Cryptographically secure random selection
function selectWinner(allNames) {
  // Generate random value using Web Crypto API
  const array = new Uint32Array(1);
  crypto.getRandomValues(array);
  
  // Convert to index in the full list
  const randomValue = array[0] / (0xffffffff + 1);
  const winnerIndex = Math.floor(randomValue * allNames.length);
  
  return allNames[winnerIndex];
}

3. The 250 Name Display Limit

For performance reasons, the wheel displays a maximum of 250 segments. However, this is purely visual and does not affect the selection process.

How Large Lists Work

// Example with 10,000 names
const allNames = [...]; // Full list of 10,000 names
const displayNames = allNames.slice(0, 250); // Only 250 shown on wheel

// Winner selection uses ALL names
const winner = selectFromFullList(allNames); // Selects from all 10,000

// After selection, update display
const winnerSegment = displayNames.includes(winner) 
  ? displayNames.indexOf(winner)
  : addWinnerToDisplay(winner);

Visual Representation

  • • If the winner is in the first 250 names: The wheel spins to that segment
  • • If the winner is beyond 250: The winner is temporarily added to the wheel for visual display
  • • The segment shows the actual winner's name, maintaining complete transparency

4. Step-by-Step Selection Process

1

Load Complete List

All names are loaded into memory, regardless of quantity.

// Load all names from database or input
const allNames = await loadAllNames(); // Could be 10, 100, or 100,000+ names
console.log(`Total names loaded: ${allNames.length}`);
2

Determine Spin Duration

Duration is intelligently scaled based on user preference and list size.

// Duration scales with both preference and list size
const durationSettings = {
  short: { baseMin: 2, baseMax: 4, scaleMin: 0.5, scaleMax: 0.75, cap: 7 },
  normal: { baseMin: 3, baseMax: 8, scaleMin: 0.5, scaleMax: 1, cap: 12 },
  long: { baseMin: 15, baseMax: 20, scaleMin: 1, scaleMax: 2.5, cap: 30 }
};

// Scale based on number of names (capped at 4000+)
const scaleFactor = Math.min(names.length / 1000, 4);
const minDuration = (setting.baseMin + scaleFactor * setting.scaleMin) * 1000;
const maxDuration = Math.min(setting.baseMax + scaleFactor * setting.scaleMax, setting.cap) * 1000;

// Examples for 5000 names:
// Short: 3.5-7 seconds | Normal: 5-12 seconds | Long: 20-30 seconds
3

Generate Random Values

Multiple cryptographically secure random values are generated for duration and winner selection.

// Use Web Crypto API for all randomness
const array = new Uint32Array(2);
crypto.getRandomValues(array);

// First value: Determine exact spin duration within range
const randomDurationMs = minDuration + ((array[0] / 0xFFFFFFFF) * (maxDuration - minDuration));

// Second value: Will be used for winner selection
const randomValue = array[1] / (0xffffffff + 1); // Value between 0 and 1
4

Select Winner

The random number determines which name from the full list wins.

// Select winner from complete list
const winnerIndex = Math.floor(randomValue * allNames.length);
const winner = allNames[winnerIndex];
console.log(`Winner selected: ${winner} (index ${winnerIndex} of ${allNames.length})`);
5

Display Result

The wheel spins for the determined duration and lands on the selected winner.

// Spin wheel for calculated duration
spinWheel(randomDurationMs);

// Update wheel display to show winner
if (displayedNames.includes(winner)) {
  // Winner is visible on wheel - spin to it
  spinToSegment(displayedNames.indexOf(winner));
} else {
  // Winner not visible - add temporarily for display
  const tempWheel = [...displayedNames.slice(0, 249), winner];
  spinToSegment(249); // Spin to the winner's position
}

5. CSV Mode Selection

For large CSV uploads, the system uses an optimized client-side index-based selection that can handle unlimited names efficiently.

How CSV Selection Works

// Large lists are stored server-side with row indices.
// The winner is picked ON THE SERVER from the FULL dataset with a
// cryptographically secure RNG. The wheel graphic only displays a
// sample; it never influences who wins.

// POST /api/v2/wheels/{wheelId}/spin-pick
// body: { excluded_indices: [...], excluded_names: [...] }

// Server (C#):
// 1. Load the complete names array (every row, not the display sample)
// 2. Build the eligible pool: skip excluded indices AND every entry
//    whose name matches a removed winner (duplicate-safe)
// 3. winner = eligible[RandomNumberGenerator.GetInt32(eligible.Count)]
// 4. Respond with the winner, its row index, pool sizes, and an
//    audit block (algorithm, timestamp, exact probability)

// If the server cannot verify a fair pick and the browser holds only
// a partial list, the spin is cancelled. No winner is ever drawn
// from an incomplete pool.

CSV Mode Features

  • Unlimited Scale: Works with 10, 100K, or 1M+ names
  • Memory Efficient: Only loads one name at a time
  • Fair Selection: Every CSV row has equal probability
  • Client-Side: No server involvement in winner selection
  • Exclusion Tracking: Removed names are tracked locally and skipped

Handling Removed Names

When you remove a winner in CSV mode, the system tracks it client-side to ensure fair subsequent selections:

// Exclusion tracking for removed names
class ExclusionTracker {
  constructor() {
    this.excludedIndices = new Set(); // Removed row indices
    this.excludedNames = new Set();   // Removed name strings
  }
  
  removeWinner(name, csvIndex) {
    this.excludedIndices.add(csvIndex);  // Skip this index
    this.excludedNames.add(name);        // Skip this name value
    this.saveToLocalStorage();           // Persist for session
  }
  
  isExcluded(index, name) {
    return this.excludedIndices.has(index) || 
           this.excludedNames.has(name);
  }
}

6. Verification & Auditing

Console Logging

When developer tools are open, the selection process logs detailed information:

// Sample console output for verification
"🎰 Spin Mode: NORMAL | Names: 10,000"
"⏱️  Duration range: 5.0s - 12.0s"
"=== WINNER SELECTION STARTING ==="
"Total names in full list: 10000"
"Names displayed on wheel: 250"
"Spin duration: 8.743s (randomly selected)"
"Random value generated: 0.7234567"
"Winner index: 7234 of 10000"
"Winner selected: John Smith"
"Winner in displayed names: false"
"=== SELECTION COMPLETE ==="

Verification Steps

  1. Open browser Developer Tools (F12)
  2. Go to Console tab
  3. Spin the wheel
  4. Review the detailed selection logs
  5. Verify the winner was selected from the complete list

7. Security Considerations

Cryptographic Security

  • • Uses crypto.getRandomValues() - the same randomness used for encryption
  • • Provides 32 bits of entropy per selection (4.2 billion possible values)
  • • Uniform distribution ensures equal probability for all names
  • • Cannot be predicted or manipulated

Why Not Math.random()?

Math.random() is not cryptographically secure and could theoretically be predicted. We use the Web Crypto API to ensure true randomness suitable for raffles, drawings, and any scenario requiring verifiable fairness.

8. Fairness Guarantees

Equal Probability

Every name has exactly equal probability of being selected:

// For a list of N names:
Probability per name = 1/N

// Examples:
100 names: Each has 1% chance
1,000 names: Each has 0.1% chance
10,000 names: Each has 0.01% chance

No Bias Factors

  • • Position in list doesn't matter
  • • Length of name doesn't matter
  • • Whether name is displayed on wheel doesn't matter
  • • Previous selections don't influence future ones (unless name is removed)

Transparency Features

  • • Complete algorithm is documented here
  • • Console logs provide full visibility
  • • Winner history is preserved and exportable
  • • Results can be independently verified

Summary

The Random Name Picker ensures complete fairness by selecting from ALL names in your list using cryptographically secure randomness. The 250-segment wheel limit is purely visual and does not affect the selection process. Every name has an exactly equal chance of being selected, regardless of list size or display limitations.

This transparent, auditable process ensures your raffles, drawings, and selections are provably fair and can withstand any scrutiny.

The Random Name Picker API is a RESTful service that allows programmatic control of your wheels. Available on all plans (including Free), it enables you to create wheels, add entries, trigger spins, and retrieve winners, all through code. Perfect for automating workflows, building custom integrations, Discord bots, or embedding wheel functionality into your own applications. There are no published hard rate limits; API usage is simply subject to fair use.
The API provides full control over wheel operations: Create new wheels with custom settings, add/remove/update entries programmatically, trigger spins and retrieve winner data, manage wheel customization (colors, fonts, sounds), sync with external databases or CRMs, automate raffle workflows, integrate with marketing automation tools, build custom dashboards and reporting, and embed wheel functionality into mobile apps or websites.
Getting started is simple: 1) Sign up for a free account (or log in), 2) Navigate to your dashboard and click 'API' in the menu, 3) Create an API key with a descriptive name, 4) Copy your API key, a single Bearer token starting with uplup_live_ or uplup_test_ (keep it secure!), 5) Visit our API documentation for code examples, 6) Start making API calls using your preferred programming language. We provide examples in JavaScript, Python, PHP, Ruby, Go, and cURL.
We do not publish hard rate limits: API usage on every plan is simply subject to fair use, so normal integration traffic is fine and we may ask you to slow down only if a client generates excessive load.
Yes, security is our top priority: All API keys are encrypted at rest using AES-256-CBC, HTTPS/TLS encryption for all API communications, authentication uses a single Bearer token per key, each key has scoped permissions, and keys can be revoked instantly if compromised.
Yes! API access is available on all plans, including Free. It is perfect for testing, development, wheel of names Discord bot integrations, and small-scale automation. There are no published hard rate limits; usage is simply subject to fair use. View our comprehensive API documentation to get started.
Our REST API works with any language that can make HTTP requests. We provide official code examples and SDKs for: JavaScript/Node.js (with async/await support), Python (requests library), PHP (cURL and Guzzle), Ruby (Net::HTTP), Go (net/http), cURL (command line), and community libraries for Java, C#, and more. The API returns JSON responses, making it easy to integrate with modern applications. See our API documentation for complete examples in each language.
Here's a simple JavaScript example showing how to create and spin a wheel using the API:

// Create and spin a wheel
const response = await fetch(`${API_BASE_URL}/api/v1/wheels`, {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer uplup_live_YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    wheel_name: 'Raffle',
    names: ['Alice', 'Bob', 'Charlie']
  })
});

const { data } = await response.json();
const wheel_id = data.wheel_id;

// Spin the wheel
const spinResponse = await fetch(`${API_BASE_URL}/api/v1/wheels/${wheel_id}/spin`, {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer uplup_live_YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
});

const spinData = await spinResponse.json();
console.log('Winner:', spinData.data.winner);

We provide examples in JavaScript, Python, PHP, Ruby, Go, and cURL. Visit our API documentation for complete code samples and endpoint details.
The Uplup Discord Bot brings the Random Name Picker directly into your Discord server. It lets you spin wheels with server members, custom entries, message reactions, or voice channel participants, all with animated GIF wheel spins displayed right in Discord. Perfect for community raffles, game nights, and picking volunteers.
The Uplup Wheel Spinner Discord Bot is a self-hosted bot, meaning you run your own instance. This gives you full control and privacy. To get started: 1) Clone the bot from GitHub, 2) Create a Discord application at the Discord Developer Portal, 3) Copy your bot token and application ID, 4) Run npm install and npm start. The README has step-by-step instructions.
The bot supports several /spin commands: /spin members - Pick from server members (optionally filter by role), /spin custom - Spin with your own comma-separated entries, /spin reactions - Pick from users who reacted to a message (great for raffles!), /spin voice - Pick from members in a voice channel. All commands support color themes: Uplup, Vibrant, Pastel, Sunset, and Ocean.
Yes! The /spin commands work perfectly without API keys: you can spin wheels with members, custom entries, reactions, and voice channels. API keys are optional and enable: /wheel commands for saved wheels, plan-based limits enforcement, and usage tracking. Get free API keys at uplup.com/brand/api-integrations to unlock these features.
Running a reaction-based drawing is easy: 1) Post a message announcing your drawing, 2) Tell participants to react with a specific emoji, 3) Once entries close, use /spin reactions message_id:YOUR_MESSAGE_ID, 4) The bot generates an animated wheel with all reactors and picks a winner! You can filter by specific emoji using the emoji option.
Yes! Every /spin command has a color option with 5 themes: Uplup (purple/pink - default), Vibrant (bold, bright colors), Pastel (soft, light colors), Sunset (warm oranges and pinks), Ocean (cool blues and teals). The animated GIF wheel spin uses your chosen theme.
Without API keys (standalone mode): 100 entries per wheel, unlimited spins. With Free API keys: 100 entries, 10 spins per wheel, 3 saved wheels. With Pro ($29/mo): Up to 1 million entries, unlimited spins, unlimited saved wheels. The bot respects your Uplup plan limits when API keys are configured.
Yes! The Wheel Picker Discord bot is completely free and open source. You self-host it on your own server (Railway, DigitalOcean, or any Node.js host). The /spin commands work without any Uplup account. Optionally add free Uplup API keys to unlock saved wheels and additional features.
Yes! We use cryptographically secure random number generation ensuring each name has exactly equal probability of selection. The algorithm is tamper-proof, results are verifiable, and the system prevents any bias or manipulation. Perfect for legal compliance in official drawings. See the 'Winner Selection Process' section above for complete technical details.
Absolutely. All data is encrypted in transit and at rest using industry-standard AES-256 encryption. We never share your data with third parties, you can delete your data anytime, and we're GDPR/CCPA compliant. Local browser storage provides additional offline backup.
Yes! Our responsive design works perfectly on all modern devices: desktop computers, tablets, smartphones, and even smart TVs. The wheel scales beautifully, touch gestures are fully supported, and it works in all major browsers (Chrome, Safari, Firefox, Edge).
Yes, in a simple way: share your wheel with a public link so others can view it, and every wheel gets a shareable winners page for transparent results. Editing is done from the account that owns the wheel, and full-screen Live Mode is perfect for spinning in front of a group at drawings or events.
Wheels with 250 names or fewer keep working offline: names are saved locally in your browser, you can still spin and pick winners, and everything syncs when you reconnect. Wheels with more than 250 names need a connection to pick winners, so if you go offline the spin is cancelled and no winner is drawn. Cloud backup protects saved wheels on your account, even if you clear your browser.
Teachers love our ad-free wheel of names for: randomly selecting students for presentations, forming balanced groups for projects, choosing classroom helpers fairly, gamifying participation when they spin wheel for rewards, and maintaining engagement with visual excitement. It's perfect for classrooms with no distracting ads or interruptions!
Perfect for Instagram, Facebook, YouTube, and TikTok raffles! Features include: transparent winner selection for audience trust, shareable winner pages for proof, CSV import from comment exporters, and live streaming compatibility for real-time drawings.
Absolutely! Businesses use our wheel of names tool for: trade show prize drawings where you spin the wheel live, employee recognition programs, customer loyalty rewards, webinar raffles, and team building activities. All features are free with an account.
Review your list before spinning: sorting names alphabetically with one click makes duplicates easy to spot and remove by hand. To keep the same person from winning twice, turn on Auto-Remove Winners. On CSV-imported lists it removes every entry of the winning name (all of their duplicate tickets), while on manually typed lists it removes only the single entry the wheel landed on.
Multiple winner announcement options: Share the public winners page URL, use full-screen mode to spin wheel for live events, export winner list to CSV, post screenshots with celebration effects, or embed in your website. All methods maintain transparency and excitement!
Yes! The Random Name Picker is free to use with generous limits: 100 names and 3 spins without an account, or create a free account for 100 names per wheel, 10 spins per wheel, and 3 saved wheels. No hidden charges, no credit card required!
For the Random Name Picker, we offer two paid plans: Pro ($29/month) - Up to 1 million names per wheel, unlimited spins, unlimited saved wheels, multi-winner selection, custom backgrounds, winner certificates, and priority support. Business ($79/month) - Everything in Pro plus team features for larger organizations.
Never, unless you choose to upgrade! The free plan stays free forever. No hidden charges, cancel anytime.

Still have questions?

Our support team is here to help you get the most out of your Random Name Picker

Docs

API for Developers

A full set of REST API endpoints to create wheels, manage entries, record spins, track winners, customize appearance, and embed wheels programmatically. API usage is subject to fair use.

API access included on the Free plan

Quick Start

Code examples in JavaScript, Python, PHP, cURL, Ruby, and Go. Bearer token auth.

Full Control

Create, spin, clone, archive, embed. Manage entries, settings, and appearance.

Analytics & Security

Spin stats, winner history, audit logs. Encrypted keys with scoped permissions.

Discord Bot Integration

Spin wheels directly in your Discord server with animated GIFs

Free for all users

Animated Spins

Watch the wheel spin in real-time with animated GIFs right in Discord.

Server Members

Spin with server members, roles, voice channel users, or reactions.

Quick Drawings

Run reaction-based drawings with transparent winner selection.

Example Commands
/spinmembers- Pick from server members
/spincustom entries:"Pizza, Burgers, Tacos"
/spinreactions message_id:123456
/spinvoice- Pick from voice channel

Self-hosted bot with optional Uplup API integration for saved wheels

Other Tools