> For the complete documentation index, see [llms.txt](https://postica.gitbook.io/binding-system-3/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://postica.gitbook.io/binding-system-3/project-tools/performance/performance-mode.md).

# Performance Mode

A leaner bind UI, for inspectors with hundreds of bindings.

This one is about the **editor**, not the game. It changes nothing in a build.

A bind row draws more than a field: connecting lines between the toggle and its fields, a live value preview, realtime debug updates, drop zones for rebinding, an animation on proxy bindings. On an Inspector with a handful of bindings that is free. On one with three hundred it is not.

Performance Mode drops all of it.

## Turning it on

**Project Settings ▸ Binding System ▸ Configuration ▸ General Settings ▸ Performance Mode**, marked **Editor Only**.

<figure><img src="https://3048705056-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLUfBXR02sJ5i0MxwYbaV%2Fuploads%2FgD3mOjptFh7QVGOsBdmG%2FScreenshot%202026-09-28%20at%2018.19.11.png?alt=media&amp;token=447017a8-7ed6-4df3-ae3c-0c7b00a8a0ae" alt="" width="563"><figcaption><p>Performance Mode and its automatic threshold</p></figcaption></figure>

## What it drops

<table><thead><tr><th width="330">Dropped</th><th>Why</th></tr></thead><tbody><tr><td>The connecting lines between the bind toggle and its fields</td><td>Decorative.</td></tr><tr><td>The live value preview</td><td>The <a href="/binding-system-3/project-tools/diagnostics/path-value-preview.md">per-binding toggle</a> stops having an effect.</td></tr><tr><td>Realtime debug updates</td><td><a href="/binding-system-3/project-tools/diagnostics/live-debug.md">Live Debug</a> still works, it just refreshes on repaint.</td></tr><tr><td>The rebind drop zones</td><td>Drag and drop onto a row is off.</td></tr><tr><td>The bind proxy animation</td><td>Decorative.</td></tr></tbody></table>

Nothing that affects what a binding **does** changes. This is purely what the Inspector draws.

## Automatic

**Auto Enable Above** turns Performance Mode on by itself for an Inspector holding at least that many proxy bindings, and off again when it drops well below. The disengage point sits about a third under the engage point, so a count hovering at the boundary cannot make inspectors rebuild repeatedly.

Set it to 0 to never engage automatically. The hint under the field states the current rule in words, for example *Enabled automatically at 60 bindings, disabled again at or below 40*.

While the manual toggle is on, the threshold field is disabled and says so, since it would be redundant.

{% hint style="info" %}
The decision is made **before any row is built**, so an Inspector never ends up with half its fields decorated and half not.
{% endhint %}

## Open inspectors keep their look

Changing the setting does not restyle inspectors that are already drawn. They keep their current look until they are rebuilt, which happens when you reselect the object. The settings page says so where it matters.

## Performance Mode and the Visualization panel

They overlap, and it is worth knowing which to reach for.

<table><thead><tr><th width="230"></th><th>Performance Mode</th><th>Visualization panel</th></tr></thead><tbody><tr><td>Granularity</td><td>All or nothing</td><td>Per feature</td></tr><tr><td>Automatic</td><td>Yes, above a threshold</td><td>No</td></tr><tr><td>Best for</td><td>"This Inspector is unusable"</td><td>"I never use this one thing"</td></tr></tbody></table>

If only one feature is costing you, turn that one off in [Visualization](/binding-system-3/reference/settings.md#visualization) and leave the rest. Two of its options are worth calling out for this: **Source Replacement**, which costs extra work when the UI is built, and **Methods** in the bind path menu, which is the single biggest factor in how long the menu takes to open on a large type.

## If the editor is still slow

<table><thead><tr><th width="330">Symptom</th><th>What to do</th></tr></thead><tbody><tr><td>The bind path menu takes a long time to open</td><td>Lower <a href="/binding-system-3/overview/paths.md#depth-limits">Max Bind Path Depth</a> to 2, and turn off <strong>Methods</strong> in Visualization.</td></tr><tr><td>The Inspector repaints constantly</td><td>Turn off <strong>Realtime Debug</strong>, and check that no binding has <a href="/binding-system-3/project-tools/diagnostics/live-debug.md">Live Debug</a> left on.</td></tr><tr><td>Selecting an object is slow</td><td>Performance Mode, and look at how many proxy bindings the object holds. The <a href="/binding-system-3/reference/settings.md#visualization">Proxy Bindings</a> list makes that visible.</td></tr><tr><td>The project takes a long time to import</td><td>That is the dependency database. See <a href="/binding-system-3/project-tools/diagnostics/dependencies.md#where-the-data-comes-from">Bindings Dependencies</a>.</td></tr></tbody></table>
