Guide : How to make macros in WoW Classic

Here is the ultimate macros guide dedicated to WoW Classic. You'll learn how to make your own macro, with all tips and /commande.

How to make macros in Classic WoW

Posté le 18/09/2019

Welcome to our Macros guide for Classic woW. You will find out how to make macros and how to use them in WoW Classic.

General Information

First of all, there is a question, what is a macro?  A macro is a list of slash commands. Something like the following:

  • /say (/s)
  • /whisper (/w, /talk, /t)
  • /emote (/e, /em, /me)
  • /dance

With macros, these commands can be used from action buttons, and many of them can be used at once. Each unique command goes on its own line and is written exactly as it would be typed it in the chat box.

While this is not an exhaustive list of all possible / useful macros and /script, we will be exemplifying almost all macro functionalities below.

/cast /target /castsequence /dismo

1. Macros 101

Open up the macro window. You can do this either by opening the main menu and selecting Macros, or by typing /macro (/m) in the chat box. At the top of the window, you'll see two tabs: General Macros and Yourname Specific Macros.

General macros are stored on an account-by-account basis and are shared by all your characters.

macro wow classic

Immediately under the tabs is a grid of 18 boxes where the macros are displayed. Under those, there is a single box which displays your currently-selected macro with a Change Name/Icon button next to it. Below that is the edit box where you actually type the macro. Finally, at the bottom you have a number of self-explanatory buttons.

To create a macro, click the New button at the bottom of the window. This brings up another small window off to the side where you choose the icon and type a name for the macro. If you choose the question mark icon, WoW will automatically pick an icon for your macro based on what spells or items are listed in the macro. Once you have chosen an icon and a name, click the Ok button.

A few notes: You can control what icon is shown in place of the question mark with the #showtooltip command. Although you can name two macros the same.

Now you will notice that the macro icon you chose has been added to the 18 boxes mentioned earlier. The newly created macro will also be selected so now it's time to start writing your macro. Click in the edit box of the macro window to start typing.

Macros have a 255 character limit.

When you are done typing your macro, click the Save button, drag the macro's icon from the grid and place it on an action button.

2. Controlling button feedback and the question mark icon ( ?) with #showtooltip

By default, WoW uses the first spell or item that appears in a macro to show cooldown, range, and availability feedback on the button, and to pick which icon to display when you use the question mark icon. Take our multi-spell macro from earlier as an example:

  • /use Talisman of Ephemeral Power
  • /cast Arcane Power
  • /cast Presence of Mind
  • /cast Pyroblast

With this macro, WoW chooses Arcane Power for the feedback. However, this is probably not what you really want. The main point of this spell is to cast Pyroblast.

You can make the button behave as if Pyroblast were the first spell by adding the following line to the top of the macro:

#showtooltip Pyroblast

If you used the question mark icon for the macro, the button will even have the icon of Pyroblast without any extra effort on your part.

macro wow classic

3. Attacking Macro : /startattack

Change your target to unit and start auto-attacking.


Stop auto-attacking.


4. Casting spells Macro : /cast

Enter /cast, the most common command you will see in macros. The /cast command allows you to cast any spell from your (or your pet's) spell book by name.

/cast Shadow Word: Pain

This macro will cast Shadow Word: Pain on your target.

The action bar code recognizes the spell and will show cooldown and range feedback on the icon. In fact, if you choose the question mark icon I mentioned earlier, the action bar will even show the icon for SW.

Cast sequence macro

Many times, you will find yourself casting a series of spells or use certain items in the same order on pretty much any mob you fight. To make this job a bit easier, we have the /castsequence command.

/castsequence takes a list of spells and/or items separated by commas. These follow the same rules as /cast and /use. This means you can interchange spell names, item names, item IDs, inventory slots, and bag slot combinations. If the spell or item is used successfully, the sequence will move to the next entry. You must repeatedly activate the macro to use all the spells in the sequence. Once you use the last entry in the list, it will reset to the beginning. Example:

/castsequence Immolate, Corruption, Bane of Agony, Siphon Life

This might be something you would use for a Warlock's opening attack. Note, however, that if Immolate fails to cast for some reason (out of mana, not in range, silenced, etc.), the sequence will remain at that point. Because of this, you cannot use a /castsequence to make a spammable macro like:

/castsequence Overpower, Execute, Mortal Strike

Interrupt a casted spell

/stopcasting was touched on briefly in other contexts but its main use, as you might guess, is used to stop another spell cast that's in progress. This is useful for making "panic buttons" that interrupt whatever you're doing at the moment in favor of something more important. 

5. Conditional: [@mouseover] - [@player] - [modifier] - [combat]

Conditionals are a way to extend the macro interface. They allow limited decision-making to macros; be aware that they are limited. A full list of conditionals will be available at the bottom of this post once the initial posts in all categories have been created.

As an example, let's take the simple macro from the initial post:

/cast Flash Heal

We are going to modify this macro with the [harm] conditional, so it does something different when an enemy is targeted:

/cast [harm]Smite;Flash Heal

Now, the macro will use Smite if you have an enemy targeted, and Flash Heal otherwise.

You can use multiple conditionals in a macro command. Example:

/cast [harm,mod:ctrl]Holy Fire;[harm]Smite;[mod:ctrl]Heal;Flash Heal

The macro will now use Holy Fire if you are pressing CTRL and you have an enemy target, Smite if you have an enemy target and are not pressing CTRL, Heal if you are pressing CTRL without an enemy target, and Flash Heal if none of the other conditions are true.


In the above example, if you have an enemy targeted, the macro will never cast Heal or Flash Heal, no matter what you do. You need to target a friendly or clear your target in order to cast a healing spell.

Conditionals available for use in macros:

(Note that any of these conditions (excepting @unit) can be inverted with no, meaning [nocombat], [nopet], etc, will work exactly as you'd expect.

  • [@unit]

Attempts to perform the action on the listed unit, unit can be a UnitID (player, target, pet, party1, raid1targettarget, etc) or a name (Adreaver-Undermine). Names are case-sensitive and only valid if the named player is a member of your group. Additionally, for Cross-Realm players, omit spaces (but not punctuation) in the realm name (Bob-SomeRealm rather than bob-some realm). A full list of UnitIDs is available at WoWPedia.

A special unit is [@mouseover], which refers to the unit (or unitframe) you are pointing your cursor at. Particularly useful for healers to cast healing spells on party members without having to change targets, they are also useful for things like interrupts, offensive dispels, and sending your pet to attack one target while you attack another. 

  • [modifier]

This allows you to cast a different spell when pressing ctrl, shift, or alt. [modifier] can be shortened to [mod] with the same effect. [mod] will register any modifier, while [mod:shift] will only register shift, and ignore ctrl or alt. If desired, you can use multiple modifiers together - [mod:ctrlalt] for example, will only register when pressing ctrl AND alt at the same time.

  • [button]

This checks which mouse button you used to click the macro. It can also be shortened to [btn]. [btn:1] is implied by default, but you can specify [btn:2] for right click, [btn:3] for middle click, and 4/5 for side buttons on your mouse.

  • [exists], [help], [harm], [dead]

These check the status of your target. [exists] simply checks for any target, living or dead, friendly or hostile. [help] and [harm] check for a friendly or hostile target respectively, while [dead] check if your target is dead. [help][harm][dead] all imply [exists] - if your target is dead, you obviously have a target.

  • [combat]

Combat allows you to check if you are in combat. This is helpful when you have certain spells that can only be used out of combat, for example mounts.

/use [combat]Aspect of the Cheetah;Brown Ram

for example would use your Aspect of the Cheetah in combat, and summon your mount out of combat, thus giving you a speed boost in either scenario.

6. Using items and trinkets Macro

The command for using an item is /use.

Like /cast, its simplest form takes the name of the item you want to use: /use Green Mechanostrider

/use <inventory slot>

This form of use allows you to use an item in the specified slot. Example:

/use 13

This command will use your Trinket 1. See also InventorySlotId for lists of the slot numbers below:

ammo = 0      head = 1       neck = 2      shoulder = 3          body = 4 (shirt)        chest = 5

waist = 6        legs = 7        feet = 8          wrist= 9         hand = 10       finger1 = 11          finger2 = 12

trinket 1 = 13          trinket 2 = 14           back = 15          mainhand = 16         offhand = 17

Equipping items Macro

There are three commands for equipping items: /equip, /equipslot, and /equipset.

/equip simply takes an item name and will equip it to the default slot as if you had right-clicked it in one of your bags.

/equipslot takes an inventory slot ID and an item name, and equips the item to the specified slot.

Example :

  • /equip Honed Voidaxe
  • /equipslot 14 Carrot on a Stick

7. Targeting Macro

Targeting is another common task in macros. This is accomplished either by using dedicated targeting slash commands which actually change your target or by using the [@unit] macro option on commands that accept them. When you use the macro option, you are actually casting the spell or using the item directly on the unit without changing targets. Macro options will be covered in great detail in Part II. For now, I'll show you how to use the targeting commands.

The most basic targeting command is /target.

  • /target Marcovitch

8. Pet control Macro

As mentioned in the spell casting section, you can use /cast to cast your pet's abilities by name.

  • /petattack , sends your pet to attack your target.
  • /petfollow , causes your pet to follow you, cancelling its attack if necessary.
  • /petstay , causes your pet to hold at its current location until given another command.
  • /petmoveto , click on the ground at a location and your pet will move there.
  • /petpassive, /petdefensive , sets the reaction mode of your pet just like the buttons on your pet bar.
  • /petautocaston, /petautocastoff, these commands manipulate the auto-cast of a given pet spell. The first will always turn auto-cast on, and the second will turn it off. Example:
  • /petautocaston Torment
  • /petautocastoff Suffering

9. Removing buffs Macro

The /cancelaura command allows you to remove unwanted buffs.

  • /cancelaura Ice Block

ice bloc wow classic

9. Dismounting Macro

Must have in Classic WoW : /dismount allows you to dismount when you have to. It’s good to insert before your first attack macro. For example:

  • #showtooltip Charge
  • /dismount
  • /cast Posture de combat
  • /cast charge

wow classic dismount

11. Leaving a form with macro

With the exception of Warriors, any class with stances (Druids, Priests with Shadowform, Rogues with Stealth, etc.) can use /cancelform to leave their current form. Example:

  • /cancelform
  • /use Super Healing Potion
  • /cast Shadowburn

12. One SHOT Macro (that doesn't work sorry)

In general, you cannot cast more than one spell with a single click of a macro. Most spells and some items trigger the global cooldown (GCD) which keeps you from taking too many actions at once. Even if a spell fails to cast, if it would trigger the GCD, it prevents subsequent /casts in the macro from running.

  • /cast Overpower
  • /cast Execute
  • /cast Mortal Strike
  • /cast Sunder Armor

Macros like this do not work anymore… Ahah

Thank you for taking the time to read this Classic WoW macros Guide! If you’re looking for more informations, you can check out our others Guides.

For more Vanilla WoW content, you can check out our other sections. Don't forget to follow us on the social networks Twitter and Discord.

We are very much interested in your experiences and opinions. Please do not hesitate to share your comments below and share this macros guide in WoW Classic to your friends. Good day.

Special Thanks

Thank you to all the following contributors and sources for helping us to create this guide : Marcovitch, Wowhead, Wowpedia

Share this news with your friends!

Do you have any friends who plays Classic WoW? Join the WowIsClassic community and share this guide with all your friends! One share = One saved murloc!


Back to the news