Mastering Custom Command Variables in Mix It Up
Guides

Mastering Custom Command Variables in Mix It Up

ApexInterfectum
12/15/2025
8 min read

Mastering Custom Command Variables in Mix It Up

You've got Mix It Up running and basic commands set up. That's great! But if you're still typing !discord to output your Discord link, you're barely scratching the surface. Custom command variables transform static commands into dynamic, personalized interactions that make your stream feel alive.

Variables are placeholders in your commands that Mix It Up replaces with real data when the command runs. Instead of "Welcome to the stream!", you can say "Welcome to the stream, @Username! You've been here 47 times!" All automatically. Let's master this powerful feature.

What Are Command Variables?

Variables are special codes wrapped in dollar signs and curly braces like ${{variable}} that Mix It Up replaces with actual data when a command executes.

Basic Example:

  • You type: Welcome ${{username}}!
  • Viewer sees: Welcome JohnGamer123!

Advanced Example:

  • You type: Thanks for the follow, ${{username}}! You're follower #${{userfollowcount}} - appreciate you joining the ${{streamname}} crew!
  • Viewer sees: Thanks for the follow, SarahPlays! You're follower #427 - appreciate you joining the PUG Empire crew!

Variables pull data from:

  • The user who triggered the command
  • Your stream information
  • Currency/points systems
  • Random selections
  • External APIs
  • Custom counters you create

This turns every command into a personalized experience.

Types of Variables Available

Mix It Up includes dozens of built-in variables. Here are the most useful categories:

User Variables

  • ${{username}} - User's display name
  • ${{usertag}} - User's @mention tag
  • ${{useraccountage}} - How old their account is
  • ${{userfollowage}} - How long they've followed
  • ${{usersubscribemonths}} - Months subscribed
  • ${{userwatchtime}} - Total watch time (hours)

Stream Variables

  • ${{streamname}} - Your stream title
  • ${{streamgame}} - Current game/category
  • ${{streamviewers}} - Current viewer count
  • ${{streamuptime}} - How long you've been live

Currency Variables

  • ${{usercurrency}} - User's points balance
  • ${{usercurrencyrank}} - Their rank by points

Random Variables

  • ${{randomnumber1-100}} - Random number in range
  • ${{randomuser}} - Random viewer in chat
  • ${{randomchoice option1|option2|option3}} - Random selection

Now let's put these to work with real examples.

Setting Up Your First Variable Command

Let's create a personalized welcome command that uses multiple variables.

Example 1: Enhanced Welcome Command

What We're Building: A !hello command that greets the user by name, tells them how long they've been following, and shows their watch time.

Step-by-Step Setup:

  1. Open Mix It Up and go to the Commands tab

  2. Click the + New Command button

  3. Set Command Trigger:

    • Type: Chat Command
    • Name: hello
    • Trigger: !hello
  4. Set Permissions:

    • Permissions: Everyone
    • Cooldown: 5 seconds (per user)
  5. Add Chat Message Action:

    • Click + Add Action
    • Select Chat Message
    • Enter this message:
    Hey ${{usertag}}! 👋 You've been part of the crew for ${{userfollowage}} and have watched for ${{userwatchtime}} hours. Thanks for hanging out!
    
  6. Save the command

Test It: Type !hello in your chat. You'll see:

Hey @YourUsername! 👋 You've been part of the crew for 6 months, 2 days and have watched for 23.5 hours. Thanks for hanging out!

Why This Works: Each variable pulls real data. Mix It Up tracks follow age and watch time automatically. Every viewer gets a unique, personalized message.

Advanced Example: Interactive Gamble Command

Let's create a gambling command where viewers can bet their stream currency.

Example 2: Currency Gambling

What We're Building: A !gamble command where users bet points, have a 50/50 chance to win or lose, and see the results.

Step-by-Step Setup:

  1. Create New Command:

    • Type: Chat Command
    • Name: gamble
    • Trigger: !gamble
  2. Add Argument (for bet amount):

    • In command settings, enable Arguments
    • Argument Name: amount
    • Make it Required
  3. Add Currency Requirement:

    • Under Requirements, add Currency
    • Minimum Amount: ${{arg1}} (uses their bet amount)
    • Currency Name: Your currency (e.g., "PUG Coins")
  4. Add Random Condition:

    • Click + Add Action
    • Select Conditional
    • Condition Type: Random
    • Probability: 50%
  5. Add Win Actions (inside the conditional):

    Action 1 - Add Currency:

    • Type: Currency
    • Operation: Add
    • Amount: ${{arg1}}
    • User: ${{user}}

    Action 2 - Win Message:

    • Type: Chat Message
    • Message:
    🎰 ${{usertag}} bet ${{arg1}} coins and WON! You now have ${{usercurrency}} coins! 🎉
    
  6. Add Else Actions (for losing):

    Action 1 - Remove Currency:

    • Type: Currency
    • Operation: Subtract
    • Amount: ${{arg1}}
    • User: ${{user}}

    Action 2 - Loss Message:

    • Type: Chat Message
    • Message:
    💀 ${{usertag}} bet ${{arg1}} coins and LOST! You have ${{usercurrency}} coins left. Better luck next time!
    
  7. Save the command

Test It: Type !gamble 100 in chat. You'll see either:

🎰 @YourName bet 100 coins and WON! You now have 1250 coins! 🎉

or

💀 @YourName bet 100 coins and LOST! You have 1050 coins left. Better luck next time!

Why This Works:

  • ${{arg1}} captures their bet amount from the command
  • Random conditional creates 50/50 odds
  • Currency actions modify their balance
  • ${{usercurrency}} shows updated balance in real-time

Creating Dynamic Stream Info Commands

Variables shine when displaying stream information that changes constantly.

Example 3: Uptime Command

What We're Building: A command showing how long you've been live and current viewer count.

Quick Setup:

  1. New Command: !uptime
  2. Chat Message Action:
    ⏱️ Stream has been live for ${{streamuptime}} with ${{streamviewers}} viewers watching! We're playing ${{streamgame}} - thanks for being here! 💚
    

Result:

⏱️ Stream has been live for 2 hours, 34 minutes with 47 viewers watching! We're playing Phasmophobia - thanks for being here! 💚

Example 4: Raid Message

What We're Building: An automatic message when you raid another channel.

Setup:

  1. New Event Command:

    • Type: Event Command
    • Event: Raid Sent
  2. Chat Message Action:

    🚀 RAID INCOMING! We're sending ${{raidviewercount}} awesome people to ${{raidtargetusername}}'s channel! Show them some love, crew! Go go go! 🎉
    

Result:

🚀 RAID INCOMING! We're sending 52 awesome people to CoolStreamer's channel! Show them some love, crew! Go go go! 🎉

Using Random Variables for Engagement

Random variables create unpredictability and excitement.

Example 5: 8-Ball Command

What We're Building: A magic 8-ball that gives random responses to viewer questions.

Setup:

  1. New Command: !8ball
  2. Enable Arguments (optional, for the question)
  3. Chat Message Action:
    🎱 ${{usertag}} asked the magic 8-ball... The answer is: ${{randomchoice Yes, definitely!|No way!|Ask again later|The spirits say yes|Outlook not so good|Absolutely not|Without a doubt|Very doubtful|Signs point to yes|My sources say no|It is certain|Better not tell you now}}
    

Result:

🎱 @ViewerName asked the magic 8-ball... The answer is: Signs point to yes

Example 6: Random Shoutout

What We're Building: A command that shouts out a random active viewer.

Setup:

  1. New Command: !shoutout (or !so)
  2. Requirements: Moderators only
  3. Chat Message Action:
    📣 Big shoutout to ${{randomuser}}! They're awesome and you should definitely follow them! Show some love in chat! 💜
    

Result:

📣 Big shoutout to @LuckyViewer! They're awesome and you should definitely follow them! Show some love in chat! 💜

Counter Variables for Tracking

Mix It Up lets you create custom counters that persist between streams.

Example 7: Death Counter

What We're Building: Track deaths in-game with !deaths and !adddeath commands.

Setup Counter:

  1. Go to Currency & Rank tab
  2. Create New Counter:
    • Name: Deaths
    • Starting Value: 0

Setup Display Command:

  1. New Command: !deaths
  2. Chat Message Action:
    ☠️ We've died ${{countername Deaths}} times this stream. Can we make it to 100? 💀
    

Setup Increment Command:

  1. New Command: !adddeath

  2. Permissions: Moderators only

  3. Action 1 - Update Counter:

    • Type: Counter
    • Counter: Deaths
    • Operation: Add
    • Amount: 1
  4. Action 2 - Announce:

    • Type: Chat Message
    • Message:
    💀 RIP! Death #${{countername Deaths}} added to the counter. We're professionals! 😅
    

Result:

💀 RIP! Death #47 added to the counter. We're professionals! 😅

Combining Variables with Conditionals

The real power comes from combining variables with conditions.

Example 8: Tier-Based Thank You

What We're Building: A sub alert that changes based on sub tier and months subscribed.

Setup:

  1. New Event Command:

    • Type: Event Command
    • Event: Subscription
  2. Add Conditional - Tier 3:

    • Type: Conditional
    • Condition: ${{usersubscribertier}} == 3
    • Message:
    🌟 LEGENDARY! ${{usertag}} just dropped a TIER 3 sub for ${{usersubscribemonths}} months! You're an absolute legend! 👑💎
    
  3. Add Else Conditional - Long-term Sub:

    • Condition: ${{usersubscribemonths}} >= 12
    • Message:
    🎉 ${{usertag}} renewed their sub for month ${{usersubscribemonths}}! You're a true veteran of the crew! Thank you! 💜
    
  4. Add Final Else - New/Regular Sub:

    • Message:
    💚 Thank you ${{usertag}} for the month ${{usersubscribemonths}} sub! You're amazing! Welcome to the crew! 🎮
    

Results:

  • Tier 3: 🌟 LEGENDARY! @BigSupporter just dropped a TIER 3 sub for 6 months! You're an absolute legend! 👑💎
  • Year+ sub: 🎉 @LoyalViewer renewed their sub for month 18! You're a true veteran of the crew! Thank you! 💜
  • Regular: 💚 Thank you @NewSub for the month 1 sub! You're amazing! Welcome to the crew! 🎮

Pro Tips for Variable Mastery

1. Test Variables in Offline Chat: Enable "Test Mode" in Mix It Up settings to test commands without going live.

2. Combine Text and Emotes: Mix variables with Twitch emotes for personality:

${{usertag}} PogChamp You've been here for ${{userfollowage}}! Pog

3. Use Fallback Text: Some variables might be empty (like watch time for new viewers). Plan for that:

Welcome ${{usertag}}! ${{if ${{userwatchtime}} > 0}}You've watched for ${{userwatchtime}} hours!${{else}}Thanks for checking out the stream!${{endif}}

4. Check the Variable List: Mix It Up has a built-in variable browser. Click the $ button when editing commands to see all available variables.

5. Don't Overdo It: More variables ≠ better. Keep commands readable:

  • Good: Thanks for the ${{usersubscribemonths}} month sub, ${{usertag}}!
  • Too much: Hey ${{usertag}} thanks for month ${{usersubscribemonths}} sub tier ${{usersubscribertier}} you've watched ${{userwatchtime}} hours and followed for ${{userfollowage}}...

6. Update Commands Based on Feedback: Watch chat reactions. If people spam a command, add cooldowns. If they love it, create variations.

Common Variable Reference

Here's a quick reference for the most-used variables:

User Info:

  • ${{username}} - Display name
  • ${{usertag}} - @mention
  • ${{userfollowage}} - Follow duration
  • ${{usersubscribemonths}} - Sub months
  • ${{usersubscribertier}} - Sub tier (1/2/3)
  • ${{userwatchtime}} - Watch hours

Stream Info:

  • ${{streamname}} - Stream title
  • ${{streamgame}} - Current category
  • ${{streamviewers}} - Viewer count
  • ${{streamuptime}} - Time live

Currency:

  • ${{usercurrency}} - User's balance
  • ${{usercurrencyname}} - Currency name
  • ${{usercurrencyrank}} - User's rank

Command:

  • ${{arg1}}, ${{arg2}}, etc. - Command arguments
  • ${{allargs}} - All arguments combined
  • ${{targetusername}} - Mentioned user

Random:

  • ${{randomnumber1-100}} - Random in range
  • ${{randomuser}} - Random chatter
  • ${{randomchoice A|B|C}} - Random selection

Special:

  • ${{date}} - Current date
  • ${{time}} - Current time
  • ${{countername CounterName}} - Custom counter

Troubleshooting Variables

Variable Doesn't Work:

  • Check spelling - variables are case-sensitive
  • Verify the variable exists in Mix It Up's variable list
  • Some variables only work in specific contexts (e.g., ${{raidtargetusername}} only in raid events)

Currency Commands Not Working:

  • Make sure you've created the currency in Currency & Rank tab
  • Verify users have enough currency for the requirement
  • Check that currency tracking is enabled

Random Variables Always Same:

  • Restart Mix It Up - sometimes random seed gets stuck
  • Use different random variable formats

Event Variables Missing:

  • Event must be triggered for event variables to populate
  • Test events using Mix It Up's event testing feature

Next Steps

You've now mastered Mix It Up variables! Here's what to build next:

  1. Create a full currency economy - Add commands for checking balance, gambling, gifting points
  2. Build mini-games - Use random variables and conditionals for Rock Paper Scissors, dice games
  3. Automate alerts - Use variables in alert messages for personalization
  4. Track statistics - Create counters for wins/losses, quotes, inside jokes
  5. Integrate with APIs - Pull data from external sources using special variables

Variables transform your stream from broadcast to conversation. Every command becomes unique to the viewer using it. That's the difference between a good stream and a great community.

Now go make your chat come alive!


Got questions about specific variables? Drop them in the comments! Want to share your coolest variable commands? We'd love to see them!

Check out our other Mix It Up guides for more streaming tips and tricks on PUG Empire!

Tags

#Mix It Up#Twitch#Commands#Tutorial#Streaming#Guide