Tick Audit / Reference

Feature reference

v1.2.0Editor plugin
  • UE 5.5–5.8
On this pageAt a glanceWhere to find itClasses viewLive cost (Play In Editor) viewSettingsMessagesLimits

Everything Tick Audit adds to the editor: where to open it, every column and value in the Classes view, what each action changes, the Live cost view, every setting with its default, and the messages you may see.

At a glance#

Item Details
Plugin type Editor only. Nothing ships in a packaged game.
Editor platforms Windows, macOS, Linux
Engine versions UE 5.5–5.8
Dependencies None
Blueprint nodes and console commands None
Live cost requirement An editor built with stats. Standard editor builds have them.
Settings Editor Preferences → Plugins → Tick Audit, per user

Where to find it#

Entry point Effect
Tools → Tick Audit, or Tools → Audit → Tick Audit Opens the Tick Audit tab.
Right-click a Content Browser folder → Audit Tick in Folder Opens the tab and scans that folder. With several folders selected, the first is used.
Right-click Blueprint assets → Audit Tick Opens the tab and scans exactly those Blueprints. Animation Blueprints produce no rows.

A switch at the top of the tab chooses Classes or Live cost (Play In Editor). Undo uses the editor's Ctrl+Z.

Classes view#

Where to look#

Control Effect
Folders Comma-separated content folders, searched with their subfolders. After Audit Tick, it reads N selected Blueprint(s); typing folders switches back.
Browse... Pick a single folder.
Level Blueprints Include the Level Blueprints of the levels open now. Applies to folder scans only.
Widget Blueprints Include widget rows, read from saved asset data without loading them.
Scan Loads every Blueprint in scope and reads its tick settings. Changes nothing.

These controls start from your preferences; changes made here are not saved back. Scanning shows a progress dialog with Cancel, which keeps what was read so far. Only Actor and Actor Component Blueprints are loaded; Animation Blueprints tick through their Skeletal Mesh component, which is listed under the owning actor.

Filters#

Control Effect
Ticking / Can tick / All Show rows that tick, rows that could tick, or everything. Ticking is the default.
Problems only Show only rows with a finding. It combines with the choice above.
Advanced columns Show the extra columns listed below.
Search names and paths Matches names, paths, parent classes, and C++ parents, ignoring case. A matching Blueprint shows its components, and a matching component shows its Blueprint.
Copy Copies the visible rows as tab-separated text, with components indented.

Click a column heading to sort.

Columns#

Column Values
Checkbox Includes the row in the actions. Unavailable when no action applies; the tooltip gives the reason.
Name The Blueprint or component. Grey names are read-only.
Type Actor, Component class, Level Blueprint, Widget, or the component's class. The tooltip shows the parent class or where a component comes from: C++, added in this Blueprint, inherited, inherited and changed here, or an Add Component node.
Ticks Yes, Starts off in blue, or Never in grey. Widgets show Yes (Slate), On demand, or No.
Start Start with Tick Enabled: On or Off. Widgets show their Tick Frequency.
Interval every frame, or a time such as 0.10 s, shown in blue.
Group The tick group.
Event Tick None, Placeholder, Disabled, Unwired in orange, Only calls Parent: Tick in yellow, or Wired. (in BP_Parent) means a parent Blueprint's node decides.
Why it ticks For example Its own Event Tick, Event Tick in a parent, C++ parent a class, or why it cannot tick. Components can add that Auto Activate turns their tick on.
Findings Ticks for nothing and Event Tick never runs in orange; Wired, starts off, Auto Activate overrides, Changes tick at runtime, and Needs compile in yellow. The tooltip explains each.
Last PIE ms Milliseconds per frame the row's objects spent ticking in the last measured Play In Editor session.
Folder The Blueprint's folder.
Advanced columns End group, When paused, Server, Auto Activate, Before BeginPlay, and Runtime tick calls.

How findings are decided#

  • Ticks for nothing: an enabled Event Tick whose execution output reaches nothing that runs. It still makes every instance tick every frame. Reroute nodes do not count as doing something, and disabled nodes along the wire are looked through.
  • A node whose only action is Parent: Tick defers to the parent class.
  • The grey placeholder a new Blueprint starts with, and nodes you disabled yourself, cost nothing.
  • Event Tick never runs: an enabled Event Tick on a class that is not allowed to tick.
  • Changes tick at runtime: the graph calls a node that changes tick, such as Set Actor Tick Enabled or Set Component Tick Interval.

Row menu#

Right-click a row for Open Blueprint, Show Event Tick Node (opens the Blueprint that holds the deciding node), Browse to Asset, Copy Path, and Check Selected or Uncheck Selected. Double-click a row to open its Blueprint.

Actions#

Actions apply to checked rows that are currently visible. Hidden rows are never changed.

Control Changes
Disable tick / Enable tick Start with Tick Enabled in the class defaults or component template. The object can still tick if something turns it on.
Interval and Set Tick Interval in seconds. Default 0.1; 0 means every frame.
Group and Set Tick Group: Pre Physics, During Physics, Post Physics, or Post Update Work.
Fix unwired Event Tick Turns the Blueprint's own unwired Event Tick back into a placeholder, then compiles. The node must have no links at all; reroutes, disabled nodes, or a connected Delta Seconds prevent it. The class stops ticking unless its parent ticks.
Save changed Blueprints Save after the action. Starts from your preference.
Check all visible Checks every visible row an action can change.
Uncheck all Clears every check, including hidden rows.

When you apply an action:

  1. Rows the action would not change are left alone, with a reason, such as a component whose Auto Activate turns its tick on anyway.
  2. A confirmation summarizes the change and what else it affects.
  3. Child Blueprints, and actors placed in open levels, follow the change when they still used the old value, as with a Details panel edit. An inherited component gets an override in the child Blueprint only.
  4. The whole action is one Undo step. Ctrl+Z also removes overrides it created.
  5. Changed Blueprints are compiled, and saved when saving is on. Read-only files are checked out through source control without asking. Maps are never saved.
  6. The table refreshes on its own.

A Blueprint that compiles with errors keeps the tick change.

Read-only rows#

Row Why it cannot be changed
Tick from a C++ parent class not listed in Safe Native Parents The parent may do its own work in Tick. Add the class to Safe Native Parents if it does not.
C++ components Their tick does the engine's own work.
Components made by an Add Component node Change them on that node.
Widgets Widgets tick through Slate. Change Tick Frequency in the widget's Class Defaults.

Status#

The summary reads, for example, N Blueprints inspected, N rows tick as soon as they exist, N tick for nothing, N have an Event Tick that never runs. A yellow hint appears when Blueprints were compiled since the scan; scan again to see their current state.

Live cost (Play In Editor) view#

Control Effect
Measure Starts measuring during Play In Editor when automatic measurement is off.
Pause / Resume Freezes the numbers and stops collecting, or continues.
Reset Discards everything measured so far.
World menu All worlds, Standalone, Listen server, Dedicated server, or a client.
By class / By owning actor One row per class, or one row per actor class including its components.
Last N s / Whole session A recent window, or everything since play started or Reset.
Blueprints only Hide C++ classes.
Search classes Filter by class name, ignoring case.
Copy Copies the rows as tab-separated text.
Column Meaning
Class Blueprints in white, C++ in grey. A trailing * means some time was matched by class name only, because the objects were gone.
Kind Actor or Component.
Ticking Objects with tick enabled right now.
Ticks/frame Tick calls per frame. Can be lower than the object count when intervals skip frames.
ms/frame Game-thread milliseconds per frame, including everything the tick calls.
us/tick Average microseconds per tick call.
Peak ms The worst single frame in the chosen span.
Event Tick ms The part spent in the Blueprint Event Tick.
% Share of all measured tick time.
Event Tick, Interval, Group The class defaults. Instances may differ.

Rows are sorted by ms/frame, highest first. Double-click a row, or use Open Blueprint, to open it.

Measurement follows Measure During Play In Editor. Each new Play In Editor session starts fresh; when play ends, the numbers stay on screen and Last PIE ms fills in on the Classes view. Simulate is measured too.

Ticks on worker threads, ticks while paused, timers, and clients in a separate process are not counted. Editor-world ticks count only with Include The Editor World. Measuring has a cost of its own, so read the numbers as a ranking and confirm hot spots in Unreal Insights.

While measuring, the viewport can show PROFILING WITH AI LOGGING ON!. It comes from the stats collection and can be ignored.

Settings#

Open Editor Preferences → Plugins → Tick Audit.

Category Setting Default Effect
Scan Folders To Scan /Game Default folders for the Classes view.
Scan Include Level Blueprints Of Open Levels On Levels that are not open are never loaded.
Scan Include Widget Blueprints On Read from saved asset data.
Editing Safe Native Parents Empty, meaning Actor, Pawn, Character, Actor Component, and Scene Component Blueprints whose tick comes from a C++ parent not on this list are read-only.
Editing Save Changed Blueprints On Save after an action. Maps are never saved.
Live Cost Measure During Play In Editor While the Tick Audit tab is open Off, While the Tick Audit tab is open, or Always.
Live Cost Live Window (seconds) 2 Length of the recent window, from 0.5 to 30.
Live Cost Panel Refresh Interval (seconds) 0.25 From 0.05 to 2. Reopen the tab after changing it.
Live Cost Include The Editor World Off Also count editor-viewport ticks during play.

Messages#

When Message
Play In Editor is running Stop Play In Editor first. Scanning and actions wait until play ends.
Assets are still being discovered A message to wait until the editor finishes discovering assets, so the audit does not miss Blueprints.
A save is in progress A package is being saved. Try again when it finishes.
Nothing to change None of the checked rows would change., with an example reason.
After an action Counts of changed, unchanged, skipped, and failed rows, followed Blueprints, compiled Blueprints, saves, and packages left for you to save, in the status line and a notification.
Stats group off The UObjects stat group is off, so no tick can be attributed to a class. Run stat group enable UObjects in the console.
The editor fell behind How many frames were dropped from the measurement.

Limits#

  • Scanning loads every Blueprint in scope; scan one folder at a time on large projects.
  • Level Blueprints come from open levels only, and their maps are left for you to save.
  • Widget rows reflect each widget's last compile and save.
  • Actions do not run during Play In Editor.
  • Live cost measures tick work only, not total frame time.
Documentation
↑ ↓ Navigate ↵ Openesc Close