Spin the Wheel of Names – Free Random Name Picker Tool

Simply enter a list of names and spin the wheel to pick a random name.

Transform your giveaways, contests, and selections with our professional-grade wheel of names. Trusted by educators, marketers, and event organizers worldwide.

Enterprise Level Features For All Use Cases

Everything you need for random selections, giveaways, and classroom activities.

🎯 Smart Name Selection

  • Animated spinning name wheel with customizable duration (1-15 seconds)
  • Multi-winner selection (pick multiple winners at once)
  • Weighted entries: assign different weights to adjust win probability (Boost 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)
  • Prevent duplicate winners (automatically removes each winner from the wheel)
  • 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 (can handle millions of names per wheel of names)
  • Manual entry with duplicate detection and removal
  • Sort names alphabetically with one click
  • Contest synchronization for automated entry management

🎨 Complete Customization

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

🏆 Winner Management

  • Automatic winner tracking and history
  • Dedicated winners page with shareable links
  • Winner Certificate: downloadable PDF proof of fair selection (Boost 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 unlimited wheels to your account dashboard
  • 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 with contest entries for automated management
  • Share wheels and collaborate with team members

🎉 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

🔌 API Integration

  • RESTful API for programmatic access (Boost plan)
  • Create, update, and delete wheels via API
  • Trigger spins and retrieve winner data programmatically
  • Real-time webhook notifications (coming soon)
  • Comprehensive API documentation with code examples
  • Support for JavaScript, Python, PHP, Ruby, Go, and cURL
  • Rate limiting: 1000 requests/hour (Boost), 10000/hour (Elevate), 50000/hour (Ultimate)
  • API key management with security controls
  • OAuth 2.0 authentication support
  • Ideal for automation, custom integrations, and third-party apps

🤖 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 giveaways and game nights

Total Usage

3,347
Wheel Spins
(past 24h)
20,278
Names Added
(past 24h)
2,355
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 (Boost $29/mo)

CSV Upload

Import names from CSV files instantly

Custom Backgrounds

Upload your own background images

Save Unlimited Wheels

Create and save as many wheels as you need

Share Results

Share winner pages with anyone

Full History

Access complete spin history forever

API Access

Programmatic control with REST API (Boost+)

API Keys

Secure authentication for your integrations

Discord Bot

Spin wheels directly in your Discord server

Simple Pricing

Free

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

Boost

$29
per month
  • 1 million names per wheel
  • Unlimited saved wheels
  • Unlimited spins & winners
  • Multi-winner selection (up to 50)
  • Weighted entries (adjust win probability)
  • Result certificates (proof of fair selection)
  • Unlimited teams (team mode)
  • Countdown Timer (auto-spin)
  • CSV upload (up to 50MB)
  • Custom backgrounds & fonts
  • Embed wheel on your website
  • Unlimited API access
  • Discord bot integration
Upgrade to Boost

Need forms, quizzes, or comment picker? View all plans

Trusted by 10,000+ Leading Companies

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

Bank of AmericaUnited AirlinesIKEASonyTikTokInstacartCharles SchwabAbbottTexas A&MArizona State UniversityGeorgetown UniversityDC.GovJetBlueMongoDB
Bank of AmericaUnited AirlinesIKEASonyTikTokInstacartCharles SchwabAbbottTexas A&MArizona State UniversityGeorgetown UniversityDC.GovJetBlueMongoDB
Bank of AmericaUnited AirlinesIKEASonyTikTokInstacartCharles SchwabAbbottTexas A&MArizona State UniversityGeorgetown UniversityDC.GovJetBlueMongoDB

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 giveaways, employee raffles, and team building activities. Perfect for sales contests, 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 giveaways and sub raffles. Perfect for game night decisions, tournament brackets, and choosing random challenges.
🎁

Social Media Giveaways

Instagram, TikTok, Facebook, YouTube creators and more use our name picker for giveaways. 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!

API for Developers

Create wheels, add entries, trigger spins, retrieve winners, and manage saved wheels programmatically

Free: 100 requests/hour

Quick Start

SDKs for JavaScript, Python, PHP, Ruby, Go, and more.

Full Control

Create, spin, and manage wheels programmatically.

Secure

Encrypted keys, IP whitelisting, audit logs.

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 Giveaways

Run reaction-based giveaways 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

Frequently Asked Questions

Everything you need to know about our Random Name Picker tool

🚀

Getting Started

(4 questions)

What is a Random Name Picker?

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 giveaways, raffles, contests, and classroom activities, this name wheel ensures fair and unbiased selection with features like CSV import, winner tracking, and customizable animations.

Is the Random Name Picker really free?

Yes! The Random Name Picker is free with no ads. Create a free account to unlock 100 names per wheel, 10 spins per wheel, and 3 saved wheels—all completely ad-free. Need more? Upgrade to Boost for just $29/month to get up to 1 million names per wheel, unlimited spins, unlimited saved wheels, plus CSV uploads and custom backgrounds!

How do I import names quickly?

You can import names three ways: 1) Upload a CSV file for bulk imports (Boost plan required, supports up to 1 million names), 2) Copy and paste from spreadsheets or documents, or 3) Type names directly with auto-save.

Can I save my wheels for later?

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 Boost for unlimited saved wheels!
🎨

Features & Customization

(10 questions)

What customization options are available?

Extensive customization includes: 40 pre-designed color themes, custom colors for each segment, background image uploads, 7 sound effects with volume control, adjustable wheel spin duration (1-15 seconds), custom spin easing animations, confetti effects, and full-screen presentation mode to spin the wheel for live audiences.

How does the Winners Page work?

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 contest results!

Can I track selection history and analytics?

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.

What is Contest Synchronization?

Contest Sync automatically connects your wheel to Uplup contests. Names are pulled directly from contest entries, winners sync back to the contest platform, and everything updates in real-time. Perfect for social media giveaways and marketing campaigns!

How does CSV upload work?

CSV upload supports files up to 50MB with intelligent processing. Small files load instantly, large files use optimized backend processing, and the system preserves metadata columns for advanced filtering. CSV upload requires the Boost plan ($29/month) and supports up to 1 million names.

What is Weighted Entries and how does it work?

Weighted Entries (Boost 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 contests (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.

What is Teams Mode?

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 Boost 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.

How does the Countdown Timer feature work?

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.

Can I embed the wheel on my website?

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!

What is the Winner Certificate feature?

The Winner Certificate (Boost 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 giveaways, HR selections, and anywhere you need verifiable proof that the selection was truly random and unbiased.
🎯

Winner Selection Process

(Technical Documentation)

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

// CSV files are stored in database with row indices
// Client selects winner by random index, then fetches just that name

class CSVWinnerSelector {
  async selectWinner(csvBatchId, totalCount) {
    // 1. Generate random index (0 to totalCount-1)
    const randomIndex = Math.floor(Math.random() * totalCount);
    
    // 2. Check if index is excluded (removed winner)
    if (this.excludedIndices.has(randomIndex)) {
      return this.selectWinner(csvBatchId, totalCount); // Retry
    }
    
    // 3. Fetch only that specific name from database
    const response = await fetch('/api/get_csv_name_by_index', {
      params: { csv_batch_id: csvBatchId, row_index: randomIndex }
    });
    
    // 4. Return the winner
    return { name: response.data.name, index: randomIndex };
  }
}

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 contests, giveaways, 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 contests, giveaways, and selections are provably fair and can withstand any scrutiny.

🔌

API & Integration

(9 questions)

What is the Random Name Picker API?

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. Free accounts get 100 requests/hour, while Boost plan users enjoy unlimited API access.

What can I do with the API?

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 contest workflows, integrate with marketing automation tools, build custom dashboards and reporting, and embed wheel functionality into mobile apps or websites.

How do I get started with the API?

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 and secret (keep them 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. Free accounts can make up to 100 API requests per hour.

What are the API rate limits?

Rate limits vary by plan to ensure optimal performance: Free Plan: 100 requests per hour, 10 per minute. Boost Plan ($29/mo): 1,000 requests per hour, 60 per minute. Elevate Plan ($59/mo): 5,000 requests per hour, 300 per minute. Ultimate Plan ($129/mo): Unlimited requests. Rate limits reset hourly and are tracked per API key. If you exceed limits, you'll receive a 429 error with retry information.

Is the API secure?

Yes, security is our top priority: All API keys are encrypted at rest using AES-256-CBC, HTTPS/TLS encryption for all API communications, API keys can be restricted by IP address and origin domain, Each key has granular permission scopes, Complete audit logging of all API activity, Keys can be revoked instantly if compromised, OAuth 2.0 support for enhanced security, Regular security audits and penetration testing.

Can I use the API on the Free plan?

Yes! API access is available on all plans, including Free. Free accounts get 100 API requests per hour—perfect for testing, development, Discord bot integrations, and small-scale automation. If you need higher limits, upgrade to Boost ($29/mo) for unlimited API access. View our comprehensive API documentation to get started.

What programming languages are supported?

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.

Can I integrate with third-party services?

Absolutely! The API is designed for integration: Connect with Zapier for 5000+ app integrations (coming soon), Sync with CRMs like Salesforce, HubSpot, or Pipedrive, Integrate with email marketing tools (Mailchimp, SendGrid), Connect to Google Sheets for automatic data sync, Build Slack bots for team notifications, Create WordPress plugins for embedded wheels, Develop mobile apps with wheel functionality, and integrate with any service that supports REST APIs.

Can you show me an example of using the API?

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('https://api.uplup.com/api/wheel/wheels', {
  method: 'POST',
  headers: {
    'Authorization': 'Basic ' + btoa('YOUR_API_KEY:YOUR_API_SECRET'),
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    wheel_name: 'Giveaway',
    entries: ['Alice', 'Bob', 'Charlie']
  })
});

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

// Spin the wheel
const spinResponse = await fetch(`https://api.uplup.com/api/wheel/wheels/${wheel_id}/spin`, {
  method: 'POST',
  headers: {
    'Authorization': 'Basic ' + btoa('YOUR_API_KEY:YOUR_API_SECRET'),
    '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.
🤖

Discord Bot

(8 questions)

What is the Uplup Discord Bot?

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 giveaways, game nights, and picking volunteers.

How do I add the Discord bot to my server?

The Uplup 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.

What commands does the Discord bot support?

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 giveaways!), /spin voice - Pick from members in a voice channel. All commands support color themes: Uplup, Vibrant, Pastel, Sunset, and Ocean.

Does the Discord bot work without Uplup API keys?

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.

How do I run a Discord giveaway with the bot?

Running a reaction-based giveaway is easy: 1) Post a message announcing your giveaway, 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.

Can I customize the wheel colors in Discord?

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.

What are the Discord bot limits?

Without API keys (standalone mode): 100 entries per wheel, unlimited spins. With Free API keys: 100 entries, 10 spins per wheel, 3 saved wheels, 100 API requests/hour. With Boost ($29/mo): Unlimited entries, unlimited spins, unlimited saved wheels. The bot respects your Uplup plan limits when API keys are configured.

Is the Discord bot free?

Yes! The 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.
🔒

Technical & Security

(5 questions)

Is the selection truly random and fair?

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.

Is my data secure and private?

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.

Does it work on all devices?

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).

Can multiple people use the same wheel?

Yes, with team collaboration features! Share wheels with team members, control permissions (view-only or edit), track who made changes, and collaborate in real-time. Perfect for organizations running multiple contests or events.

What happens if I lose internet connection?

The app continues working offline! Names are saved locally in your browser, you can still spin the wheel and select winners, and everything syncs when you reconnect. Cloud backup ensures you never lose data, even if you clear your browser.
💡

Use Cases & Best Practices

(5 questions)

How do educators use this tool?

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!

What about social media giveaways?

Perfect for Instagram, Facebook, YouTube, and TikTok contests! Features include: transparent winner selection for audience trust, shareable winner pages for proof, CSV import from comment exporters, integration with contest platforms, and live streaming compatibility for real-time drawings.

Can I use this for business events?

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 giveaways, and team building activities. All features are free with an account.

How do I prevent duplicate entries?

Built-in duplicate detection automatically identifies and can remove duplicate names. You can choose to keep or remove duplicates, see a count of duplicates found, and maintain clean entry lists. The system also validates email formats if needed.

What's the best way to announce winners?

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!
♾️

Usage Limits

(3 questions)

Is the wheel of names picker actually free?

Yes! The Random Name Picker is free to use with generous limits: 100 names and 10 total 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!

What are the paid plan options?

For the Random Name Picker, we offer one simple paid plan: Boost ($29/month) - Up to 1 million names per wheel, unlimited spins, unlimited saved wheels, CSV uploads, custom backgrounds, and all premium features. It's everything you need at one simple price!

Will I ever be charged for using the tool?

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

Help Center

Other Tools

Free
Name Picker Wheel
Free
Yes or No Wheel
Free
Seating Chart Maker
Free
Social Media Comment Picker
Free
Secret Santa Generator
Free
Flip a Coin
Free
Dice Roller