Skip to main content
WeakAuras provides powerful import/export functionality to share your auras with others or move them between characters.

Exporting Auras

Basic Export

1

Open WeakAuras

Type /wa or click the minimap icon
2

Select the Aura

Click on the aura or group you want to export
3

Click Export

Click the export button (📋 icon) in the interface
4

Copy the String

WeakAuras will generate an encoded string. Press Ctrl+C to copy it to your clipboard.

What Gets Exported

When you export an aura, the following is included:
  • Visual settings (size, position, colors)
  • Textures and icons
  • Animation settings
  • Font choices
  • All trigger configurations
  • Multiple trigger logic
  • Custom trigger code
  • Class/spec requirements
  • Zone restrictions
  • Combat state conditions
  • On Init/Show/Hide actions
  • Custom Lua code
  • Sound effects
When exporting a group, all child auras are included automatically.
Not Exported:
  • Character-specific settings
  • Position of auras if you want recipients to reposition them
  • WeakAuras Companion sync data
  • Saved variables from aura_env.saved (unless specifically configured)

Export Format

WeakAuras uses a compressed and encoded format:
!WA:2!...encoded string...
The format includes:
  • Version identifier (!WA:2!)
  • LibDeflate compression for size efficiency
  • Base64 encoding for safe transmission
  • Serialized Lua table data

Importing Auras

Basic Import

1

Copy the Import String

Get the WeakAuras string from a friend, website, or your notes
2

Open WeakAuras

Type /wa to open the interface
3

Click Import

Click the “Import” button (or press Ctrl+V if string is in clipboard)
4

Paste the String

Paste the import string into the text field
5

Review & Import

WeakAuras will show a preview. Click “Import” to confirm

Import Dialog

The import dialog shows:
  • Aura Name: The name of the imported aura
  • Author: Who created it (if available)
  • Description: What the aura does
  • Version: WeakAuras version used to create it
  • Preview: Visual preview of the aura
  • Custom Code Warning: Alert if the aura contains Lua code
Security Notice: Imported auras may contain custom Lua code. Only import auras from trusted sources. Review any custom code before importing.

Handling Import Conflicts

If you already have an aura with the same name:
Replaces your current version with the imported one. Your customizations will be lost.

Sharing Methods

Copy/Paste

The simplest method:
  1. Export the aura
  2. Share the string via:
    • Discord
    • Pastebin
    • Google Docs
    • In-game chat (for small auras)
For long strings, use a service like Pastebin instead of pasting directly in chat.

Wago.io

The premier sharing platform for WeakAuras:

Upload

Uploading to Wago.io:
  1. Visit wago.io
  2. Create an account
  3. Click “Import String” and paste your export
  4. Add description, screenshots, and tags
  5. Publish for others to use

Download

Installing from Wago.io:
  1. Find the aura on wago.io
  2. Click “Copy Import String”
  3. Import in WeakAuras as normal
  4. Or use WeakAuras Companion app for one-click install

WeakAuras Companion

The WeakAuras Companion app provides:
  • One-click updates from Wago.io
  • Automatic update notifications
  • Bulk import/update operations
  • Collection management

In-Game Sharing

Share directly with other players:
1

Create a Chat Link

Select your aura and click the “Link” button
2

Share in Chat

Post the link in guild chat, party, raid, or whisper
3

Recipient Clicks Link

Other players click the link to request the aura
4

Automatic Transfer

WeakAuras sends the aura data directly to the player
In-game sharing only works with players in your party, raid, or guild. For strangers, use export strings instead.

Advanced Import/Export

Transmission.lua

The import/export system is implemented in WeakAuras/Transmission.lua:
-- Key functions from Transmission.lua

-- Convert display to export string
DisplayToString(id, forChat)

-- Import aura from string
Import(str, target)

-- Encode table to string
TableToString(inTable, forChat)

-- Decode string to table
StringToTable(inString, fromChat)

Export String Format

The technical format:
  1. Serialization: Lua table → LibSerialize
  2. Compression: LibDeflate with level 9 compression
  3. Encoding: Base64 for safe text transmission
  4. Prefix: !WA:2! version identifier
-- Simplified export process
local serialized = LibSerialize:SerializeEx(config, auraData)
local compressed = LibDeflate:CompressDeflate(serialized, {level = 9})
local encoded = "!WA:2!" .. LibDeflate:EncodeForPrint(compressed)

Import Versions

WeakAuras supports multiple import versions:
  • Version 0: Legacy format (simple Base64)
  • Version 1: Base64 with LibDeflate compression (!...)
  • Version 2+: Modern format (!WA:2!...)
The import system automatically detects and handles all formats.

Custom Data Handling

Some data is stripped during export for security:
-- Non-transmissable fields (from Transmission.lua)
local non_transmissable_fields = {
  -- Character-specific data
  frameStrata = true,
  anchorFrameType = true,
  
  -- Unused custom trigger fields
  custom = true,      -- if trigger type is not "custom"
  customDuration = true,
  customIcon = true,
  
  -- Internal state
  information = {
    saved = true      -- aura_env.saved data
  }
}

Programmatic Import

Import auras via Lua:
-- Import from string
local success, error = WeakAuras.Import(importString)

if success then
  print("Aura imported successfully")
else
  print("Import failed:", error)
end

-- Update existing aura
local targetData = WeakAuras.GetData("ExistingAuraID")
WeakAuras.Import(importString, targetData)

Best Practices

Document Your Auras

Add descriptions and notes explaining what the aura does and how to use it.

Test Before Sharing

Thoroughly test auras before sharing to ensure they work correctly.

Include Load Conditions

Set appropriate load conditions so the aura only loads when needed.

Comment Custom Code

Document any Lua code with clear comments explaining the logic.

Version Your Auras

Include version numbers or dates in the aura name or notes.

Credit Sources

If you modified someone else’s aura, credit the original author.

Troubleshooting

Possible causes:
  • Incomplete copy (missing beginning or end)
  • Text editor modified the string (added line breaks)
  • WeakAuras version too old
Solutions:
  • Ensure you copied the entire string including !WA:2!
  • Use a plain text editor, not Word or rich text
  • Update WeakAuras to the latest version
Possible causes:
  • Corrupted import string
  • String was modified
  • Clipboard issue
Solutions:
  • Request a fresh export from the source
  • Try copying again
  • Check for special characters that got mangled
Check these:
  • Load conditions (class, spec, zone)
  • Trigger conditions might not be met
  • Aura might be positioned off-screen
  • Combat requirements
Solutions:
  • Review load conditions in the Load tab
  • Test the trigger condition
  • Reset position to screen center
WeakAuras warns when importing auras with custom Lua code.What to do:
  • Only import from trusted sources
  • Review the custom code before importing
  • Check for suspicious functions (file access, addon messages)
  • Ask the community if unsure

Next Steps

Creating Auras

Learn to create your own auras

WeakAuras Companion

Automate imports from Wago.io

Lua Scripting

Add custom functionality

Build docs developers (and LLMs) love