Every lockout investigation on this site starts with Event 4740 — but that event only exists if somebody turned auditing on before the incident. Ten minutes of setup today is the difference between a mystery and a log entry that names the guilty machine.
Here is the uncomfortable default: on many networks, account lockout auditing is not fully enabled, so the first real lockout arrives with no 4740 event, no caller computer name, and an admin reduced to guessing which device holds the old password. This page is the fix, done once, properly: which audit subcategories produce 4740 and 4625, where to set them (domain controllers matter most), how to verify with auditpol instead of hoping, how to keep the logs from overwriting themselves, and the extra Netlogon debug log that cracks the cases the events cannot.
Two events do all the lockout detective work, and each has its own switch in Advanced Audit Policy Configuration (inside Group Policy: Computer Configuration → Policies → Windows Settings → Security Settings → Advanced Audit Policy Configuration):
On a standalone PC the same settings live in secpol.msc under Advanced Audit Policy Configuration — worth doing on any important single machine too.
Group Policy is the durable route, but for immediate verification or a single machine, auditpol speaks directly:
auditpol /set /subcategory:"Account Lockout" /success:enableauditpol /set /subcategory:"Logon" /failure:enableauditpol /get /subcategory:"Account Lockout" — and check the whole picture with auditpol /get /category:*gpupdate /force, then run the /get command again. "I set it in the console" is not verification; the auditpol output is.One Group Policy gotcha that burns everyone once: if the legacy basic audit policy and the advanced subcategories fight, advanced settings can be silently overridden. The security option "Audit: Force audit policy subcategory settings to override audit policy category settings" exists precisely to settle that fight in favour of the subcategories.
Auditing that overwrites itself by lunch is theatre, not evidence. The Security log on a busy DC fills fast once failure auditing is on:
For the stubborn case — 4740 shows the caller, but the trail dies there — domain controllers keep one more diary: the Netlogon debug log. Enable it on the DC with nltest /dbflag:0x2080ffff and the file C:\Windows\debug
etlogon.log starts recording authentication traffic in detail — which workstations passed bad passwords through, and when. It has solved "impossible" lockout mysteries for a generation of admins. Two disciplines: turn it off when the case closes with nltest /dbflag:0x0 (the log is verbose and rotates), and treat the file as sensitive — it maps your authentication flows, so it does not belong in casual email threads. With auditing on, logs sized, forwarding set and this tool in reserve, your next lockout will not be an investigation. It will be a lookup.
The complete lockout policy walkthrough and all 3 recovery methods, shown live on a real Windows system — this is the video this guide is based on.
▶️ Watch Full VideoBecause Audit Account Lockout (Success) was not enabled on the domain controller that processed the lockout. The event is only written when that subcategory is on. Enable it in the Default Domain Controllers Policy, run gpupdate, and verify with auditpol /get.
Domain controllers first: 4740 is written there, since AD processes the lockout. Add Audit Logon (Failure) for Event 4625 on DCs and also on important member servers and workstations, where it can reveal the original device or IP behind a lockout.
nltest /dbflag:0x2080ffff enables detailed Netlogon debug logging on a domain controller, written to C:\Windows\debug\netlogon.log. Use it when Event 4740 and 4625 still cannot identify the source of bad passwords. Remember to switch it off afterwards with nltest /dbflag:0x0.