promotional bannermobile promotional banner

Freeloader

A lightweight addon to profile other addons!
Freeloader.jpg

Freeloader.jpg

Description

Freeloader

Which addon isn't paying its way?

Shows CPU and memory usage from other addons in a single persistent GUI window.

No libraries, Super Minimal, costs nothing until opened!

Built for the 2.5.6 anniversary client. Also loads on Classic Era and WoW Forever (1.60.1).

Just a little thing Claude built for me, there are likely better options out there, but this one works fine! I'm not sure if I'll be maintaining this one, but feel free to reach out to @wallhackjack on discord.

WoW Forever

Forever has a built-in addon profiler, and Freeloader uses it by default:

  • No reload and no script profiling. CPU numbers show up as soon as you open the window, with no profiling overhead.
  • Peak column. Each addon's worst single frame, held on screen for 10 seconds so you can catch spikes.
  • Spike counts. /free report shows how many frames each addon has taken over 5 ms this session.

On other clients, CPU comes from script profiling, which /free toggle turns on (it needs a reload).

Usage

/free                  Toggle the window, and print this list
/free profiler         Forever only: read CPU from the built-in profiler (default on)
/free toggle           Toggle script profiling (needs a reload; not needed on Forever)
/free memory           Track allocation rate, the KB/s column (default off)
/free report <count>   Cumulative worst offenders since login, printed to chat
/free reset            Zero the counters and start a fresh window
/free rows <count>     How many lines the window shows (3-40)
/free rate <seconds>   How often the table refreshes (0.25-10, default 3)
/free lock             Stop the window being dragged

Caveats worth knowing

  • Attribution is per-owning-file. An addon that hooks or calls into another addon bills the callee. If a number looks wrong, it probably is.
  • This is Lua cost only. An addon that spawns 400 frames costs you draw time that never shows up in a CPU column. Watch the fps readout alongside it.
  • Negative memory deltas are floored at zero. A drop means the collector ran, not that an addon gave memory back.
  • Nothing is sampled while the window is closed. Hidden frames get no OnUpdate. /free report still works, since it reads cumulative counters.
  • On Forever, /free reset only clears the window. The profiler's session totals in /free report can't be reset.

License

Do what you like with it.

The Freeloader Team

profile avatar
  • 3
    Projects
  • 900
    Downloads

More from Wallhackjack

  • WhoDoesWhat project image

    WhoDoesWhat

    A raid-assigments panel for TBC with hassle-free paladin assignments, syncs to pallypower and raid members.

    • 780
    • September 27, 2026
  • TagTeam project image

    TagTeam

    TagTeam with guildies, friends, and randoms! See % damage done to multiple enemies, then kill when ready, all while unpartied!

    • 117
    • September 8, 2026
  • WhoDoesWhat project image

    WhoDoesWhat

    A raid-assigments panel for TBC with hassle-free paladin assignments, syncs to pallypower and raid members.

    • 780
    • September 27, 2026
  • TagTeam project image

    TagTeam

    TagTeam with guildies, friends, and randoms! See % damage done to multiple enemies, then kill when ready, all while unpartied!

    • 117
    • September 8, 2026