Practice with mock tests, learn from structured notes, and get your questions answered by a global forensic community, all in one place.
Computer-Assisted Audit Techniques (CAATs) are structured, software-driven procedures that let fraud examiners interrogate entire datasets rather than samples, uncovering anomalies that manual testing cannot reach.
Last updated:
An auditor testing 200 purchase orders from a population of 80,000 will miss a fraud that targeted the other 79,800. That gap between what sampling can reach and what the data contains is the problem that Computer-Assisted Audit Techniques were built to close. CAATs let a fraud examiner interrogate every single transaction in a dataset, not a sample, running a battery of structured tests that a human could never complete manually, and completing them in minutes rather than weeks.
The tools have matured considerably. ACL Analytics (rebranded as Galvanize, now Diligent HighBond) and IDEA from CaseWare have been in forensic accounting use since the 1990s. Today they sit alongside SQL queries, Python notebooks, and Power Query, each capable of the same core techniques: finding duplicates, identifying gaps in sequences, stratifying by value, matching across tables, and flagging statistical outliers. The technique matters more than the tool.
This topic covers the main CAAT procedures used in fraud investigations, the logic behind each, how they are combined into a reproducible workflow, and the documentation standards that keep the results admissible. Alongside Benford analysis and network analytics, CAATs form the backbone of the data-driven forensic accounting engagement.
A fraudster who knows your sampling strategy simply avoids the sampled layer.
Statistical sampling works well in a compliance audit because errors are assumed to occur randomly. Fraud is not random. A dishonest employee who understands how invoices are checked will route their scheme through the categories and value bands that audit sampling rarely touches. Purchase orders just below the approval threshold. Vendor payments to addresses that look legitimate. Payroll entries in the same range as legitimate wages.
Full-population testing removes that refuge. When every disbursement, every journal entry, and every payroll record is tested, there is no safe harbour. The examiner does not need to know in advance which transactions are suspicious. The test finds the pattern and surfaces the outliers. Human review then concentrates on the flagged subset, which is often a small fraction of the total, instead of a random sample that may miss the fraud entirely.
Six techniques cover most of the territory a fraud examiner needs to explore.
The following procedures are the workhorses of the data-analytics layer of a forensic accounting engagement. They are run on the same dataset in sequence, and their outputs are combined before the examiner moves to substantive document testing.
The analysis is only as reliable as the data it runs on.
Getting the right data is often the hardest part of a CAAT engagement. ERP systems such as SAP, Oracle, and Microsoft Dynamics store transactions in complex relational schemas, and an extract that looks complete may be missing tables, have been filtered by the system administrator, or contain data that was archived or deleted before the export. Every export should be accompanied by record counts and hash totals so the examiner can verify completeness.
If another analyst cannot repeat your test from your documentation, the result is not evidence.
Reproducibility is the standard that separates a CAAT result that can withstand cross-examination from one that cannot. Every step in the analytical workflow must be scripted or recorded in sufficient detail that an independent examiner, starting from the same data, arrives at the same output. In ACL and IDEA, commands are logged automatically. In Python or SQL, the script itself is the record. In Excel, a formula audit trail and worksheet notes are the minimum acceptable documentation.
| Documentation element | Purpose | Minimum standard |
|---|---|---|
| Source data hash | Proves the dataset was not altered after acquisition | SHA-256 of the original extract, logged with date and time |
| Field mapping | Explains which columns were used and why | A data dictionary linking column names to their business meaning |
| Query or script | Records the exact logic of each test | The full ACL/IDEA command, SQL statement, or Python script |
| Output record counts | Confirms the test ran on the full population | Counts at the start and end of each filter or join operation |
| Exception log | Documents the flagged items and the follow-up disposition | Tabulation of each exception, who reviewed it, and what was concluded |
Data analytics identifies where to look; document review, interview, and financial tracing find the proof.
CAATs sit at the beginning of the investigative funnel. A well-designed CAAT run on accounts payable might flag 300 transactions out of 50,000. Those 300 go to document review: the examiner pulls the underlying invoices, goods-received notes, and approval records. Of the 300, perhaps 40 have documentation problems. Of those 40, perhaps 12 involve the same vendor. The vendor is then subjected to beneficial-ownership analysis and, if warranted, subpoena.
The point is that CAAT output does not end the inquiry. It focuses it. A ghost-vendor scheme uncovered through join-and-match still requires document and interview evidence to prove that the vendor was fictitious, that the approver was complicit, and that the payments served no legitimate purpose. CAATs are the filter that makes the rest of the work feasible.
Each major scheme type leaves a specific data signature.
| Fraud scheme | Primary CAAT test | What the flag looks like |
|---|---|---|
| Duplicate payment to vendor | Duplicate detection on invoice number, vendor ID, amount | Two or more payments sharing key fields within a short date window |
| Ghost vendor / shell company | Join-and-match: vendor bank account vs employee bank account | Vendor and employee share a bank account number or address |
| Split purchase orders (threshold avoidance) | Stratification + two-digit Benford test | Concentration of amounts just below approval threshold; spike in specific two-digit pairs |
| Ghost employee | Join-and-match: payroll vs HR active-employee list | Payroll records for employees with termination dates in the past |
| Skimming / missing receipt sequences | Gap test on receipt or check numbers | Sequential gaps in a series that should be continuous |
| Expense report inflation | Outlier detection + duplicate detection | Expense claims significantly above the statistical mean, or identical amounts on different dates |
A forensic accountant finds that three vendors in the accounts payable master file share bank account numbers with three current employees. Which CAAT procedure produced this finding?
Test yourself on Forensic Accounting and Financial Forensics with free, timed mocks.
Practice Forensic Accounting and Financial Forensics questionsSpotted an error in this page? Report a correction or read our editorial standards.