Rebuilding Corrupted Windows Performance Counter Libraries

Lyn Lyn 80 Reputation points
2026-09-10T09:55:18.9233333+00:00

Hi,

Windows Performance Monitor (PerfMon) is unable to load or display system performance counters and returns the error “Unable to add these counters.” This behavior may occur when the performance counter registry entries or counter libraries have become corrupted or inconsistent.

What is the supported procedure to rebuild the performance counter configuration from the system’s backup files using the lodctr /R command, and what additional steps should be taken to restore counter functionality and verify that the counters are working correctly?

Windows for business | Windows Server | Performance | Other
0 comments No comments

Answer accepted by question author
Hoang Le 6,365 Reputation points Independent Advisor
2026-09-10T10:31:09.0966667+00:00

Hello Lyn Lyn,

When PerfMon cannot load counters and shows “Unable to add these counters,” the supported recovery is to rebuild the performance counter configuration from the system’s backup files. On Windows, this is done with lodctr /R executed in an elevated command prompt. That command reloads the performance counter registry settings from %SystemRoot%\System32\PerfStringBackup.ini and restores the default libraries. After running it, you should restart the Performance Logs and Alerts service (perfmon depends on it) or simply reboot the server to ensure the counters are re‑registered.

Once the system is back up, verify functionality by running lodctr /Q to list counters and confirm they are present, and then open PerfMon to add counters interactively. If you still encounter missing counters for specific applications, reinstall or repair those applications so their performance libraries are re‑registered. This procedure is the Microsoft‑supported method to restore corrupted performance counter configurations and ensure PerfMon operates correctly again.

If my answer is useful for you, please hit Accept the answer to support me.

Thank you,

HL.

Was this answer helpful?

1 person found this answer helpful.
0 comments No comments

1 additional answer

Sort by: Most helpful
  1. AI answer

    2026-09-10T09:55:37.7133333+00:00

    Use an elevated Command Prompt.

    1. Rebuild the 64-bit counter registry strings and info:
         cd c:\windows\system32
         lodctr /R
      
      /R must be uppercase. Administrative rights are required.
    2. On 64-bit systems, rebuild the 32-bit counters as well:
         cd c:\windows\sysWOW64
         lodctr /R
      
    3. Resynchronize performance counters with WMI:
         WINMGMT.EXE /RESYNCPERF
      
    4. Restart the related services:
         Get-Service -Name "pla" | Restart-Service -Verbose
         Get-Service -Name "winmgmt" | Restart-Service -Force -Verbose
      
    5. Restart the computer.
    6. Verify counters are usable:
      • Open Performance Monitor and try adding counters again.
      • Create a new Data Collector Set instead of reusing an existing one.
      • Confirm the expected counters now return data.

    If some counters are still missing after lodctr /R:

    1. Check whether the counters are disabled in the registry under: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\%servicename%\Performance
    2. Verify DisablePerformanceCounters is 0.
      • 1 = counter disabled
      • 2 = 32-bit counter disabled
      • 4 = 64-bit counter disabled
    3. If lodctr /R does not recover all counters, verify that c:\windows\system32\PerfStringBackup.INI contains the proper information. If it is drastically smaller or missing information, a backup copy from an identical machine can be used carefully. Back up the existing file first.
    4. For specific extensible counters that still fail, identify the related .ini file and reload it with lodctr <inifile>. Example workflow:
         cd %Systemroot%\System32
         findstr drivername *.ini
         lodctr <inifile>
      
      Repeat for each affected driver, then restart the computer.

    Warning: registry edits and manual counter rebuild steps can affect system stability if done incorrectly. Back up the registry before modifying it. Removing values from a service Performance subkey can also cause installed .NET Framework applications to fail until counters are rebuilt again.


    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.