Audit trails are the single most commonly cited technical finding in data integrity enforcement actions. The problems run a wide gauge. Some systems have audit trails switched off entirely. Others capture that an event happened but not what the value used to be. Some let a privileged user clear the trail with no second control and no record of the clearing. Understanding what a complete, defensible audit trail actually looks like, and how to prove it is complete, is foundational work for any data integrity program across pharmaceuticals, biologics, medical devices, and the broader life sciences.
This article covers audit trail architecture, configuration during validation, the review process, hybrid and paper equivalents, the roles that own each piece, and the specific behaviors an inspector exhibits when they sit down at your workstation. If you are new to the topic, start with data integrity foundations and the ALCOA+ principles in detail. The audit trail is the mechanism that makes the Attributable, Contemporaneous, and Original attributes verifiable rather than asserted. If you only read one section before an interview, read the worked examples and the interview questions near the end.
What an Audit Trail Must Capture
The regulatory basis
The primary basis in the United States is 21 CFR Part 11.10(e), which requires controls for closed systems to include:
“Use of secure, computer-generated, time-stamped audit trails to independently record the date and time of operator entries and actions that create, modify, or delete electronic records. Record changes shall not obscure previously recorded information.”
That last sentence does a lot of work. It is the legal hook for capturing prior values, not just the fact that a change occurred. In the European Union, EU GMP Annex 11, clause 9 carries equivalent intent: systems should be designed to record GMP-relevant changes and deletions, and the resulting audit trail should be readable in a generally intelligible form and reviewed on a regular basis. The FDA guidance “Data Integrity and Compliance With Drug CGMP: Questions and Answers” (final, December 2018) scopes audit trail expectations around CGMP records, and the MHRA “GXP Data Integrity Guidance and Definitions” (March 2018) restates the same expectation across GxP: the trail must answer who did what, when, and what the data was before the change.
The same principle reaches the device world through 21 CFR Part 820 (and the harmonized Quality Management System Regulation that aligns it with ISO 13485) and, for device software, through IEC 62304 and design history records. The PIC/S guidance PI 041 “Good Practices for Data Management and Integrity in Regulated GMP/GDP Environments” gives the most detailed international treatment and is worth reading once in full. The point is that audit trail expectations are not a quirk of one regulation. They are a near-universal feature of GxP regimes because they are what makes a record trustworthy.
Why it is required (the risk rationale)
A record without an audit trail is a claim. You can say a result was 99.1, but you cannot show whether it was always 99.1, or whether it started at 89.1 and someone changed it after the batch was already failing. The audit trail converts an assertion into a reconstructable history. Without it, the integrity of every downstream decision (batch release, stability conclusion, a complaint investigation, a regulatory submission) rests on trust alone, and regulators do not run on trust. They run on evidence.
Tiers of completeness
“What action” is where most systems fall short. It helps to think in tiers of completeness.
| Tier | What is logged | Verdict |
|---|---|---|
| Tier 1 | ”Record modified”, with timestamp and user ID | Inadequate. Does not say which field changed or what it was. |
| Tier 2 | Event, timestamp, user ID, and the specific field modified | Partial. Still missing the prior value. |
| Tier 3 | Event, timestamp, user ID, field, prior value, new value, and reason where required | Compliant. Allows full reconstruction of record history. |
Most modern laboratory information management systems (LIMS), electronic lab notebooks (ELN), manufacturing execution systems (MES), and chromatography data systems (CDS) support Tier 3 logging, but it almost never ships that way. The default out-of-box configuration for many platforms is Tier 1 or Tier 2, often to keep the audit table small and the application fast. That gap between vendor default and regulatory requirement is the most common technical root cause behind audit trail observations. The vendor sold a capable system. Nobody turned the capability on.
What goes in a single entry
A complete Tier 3 entry has, at minimum, these fields:
| Field | Example | Why it matters |
|---|---|---|
| Record / object identifier | Sample S-2025-04417, field Assay_Result | Pins the change to a specific data point |
| Action type | Create / Modify / Delete / Reprocess / Sign | Distinguishes an edit from a deletion or an approval |
| Timestamp (with offset) | 2025-06-04 14:07:33 UTC | Establishes contemporaneity |
| User identity | jdoe (unique, attributable) | Answers who; never a shared account |
| Old value | 98.2 | Required by “shall not obscure previously recorded information” |
| New value | 99.1 | Completes the before/after pair |
| Reason for change | ”transcription correction, verified against printout” | Required where the data is critical |
A defensible Tier 3 entry for a single edit reads: user jdoe changed field Assay_Result from 98.2 to 99.1 on 2025-06-04 at 14:07:33 UTC, reason “transcription correction, verified against printout”. A reviewer can reconstruct exactly what the value was, who changed it, when, and why, without asking anyone.
Acceptance criteria for “captured correctly”
You know the capture side is done when, for any GxP record in the system, you can answer all four questions (who, what, when, prior value) from the trail alone, with no verbal explanation, for the full retention period, and when no user role can change or remove an entry after it is written. If any of those fail, the trail has a gap.
Time and Date Integrity
A timestamp is only meaningful if the clock behind it is trustworthy. This is an area where implementation is often weak even in otherwise well-designed systems, because the clock lives in the infrastructure layer that the application owners rarely look at. Time stamps and system clock control covers this layer on its own.
NTP synchronization. Every instrument and system that generates GxP records should have its clock synchronized to a Network Time Protocol (NTP) source. The usual pattern is an internal NTP server that is itself disciplined to a trusted external reference, with all instruments and application servers pointing at the internal server. The synchronization should be configured, qualified during infrastructure qualification, and monitored for drift. Instruments on isolated or air-gapped networks that cannot reach an NTP server need a documented alternative: a hardware time reference, or a manual verification at a defined frequency with a recorded result.
Time zone consistency. For multi-site operations, confirm whether each system stores audit trail timestamps in UTC or in local time, and whether conversion to local time for display is handled consistently. A LIMS that stores UTC and a CDS that stores local time will produce apparent discrepancies that look like backdating even when nothing irregular happened. The cleanest design stores UTC internally and displays local time with the offset shown. Document the convention so a reviewer or inspector is not left guessing.
Clock manipulation. Inspectors look for evidence of manual clock changes in operating system and application logs. Any legitimate adjustment, whether for daylight saving, NTP resynchronization after an outage, or a hardware clock replacement, should be expected and explainable. An undocumented backward clock change near the timestamp of a contested result is a serious finding, because moving the clock back is the simplest way to make a late entry look contemporaneous.
Server-side versus client-side timestamps. For web-based LIMS, ELN, or MES, verify that timestamps are generated on the server, not the browser. A client-side timestamp can be changed by anyone who can change the clock on their own laptop, which defeats the entire control.
Acceptance criteria. Time integrity is in order when synchronization is qualified and monitored, the drift tolerance is defined and met, the storage and display time zone convention is documented, and any clock change in the relevant window is explainable from a contemporaneous record.
What Must Be Captured, and What Can Be Excluded
Not every system event needs audit trail capture. The 2018 FDA Q&A guidance frames the scope around CGMP records, and EU GMP Annex 11 uses a “GMP-relevant” qualifier; either way, the relevance-based scoping matters. Configuration changes in a non-production sandbox, administrative tweaks to data that never touches a product decision, and routine system maintenance generally do not require the same trail as result data. The point is to capture everything that could affect a quality decision, not to log every mouse click.
| Data or event type | Audit trail required? |
|---|---|
| Result values (analytical, in-process, environmental) | Yes |
| Instrument and method configuration used for data acquisition | Yes |
| Processing parameters (integration methods, calculation formulas, peak edits) | Yes |
| Reprocessing or re-integration of acquired data | Yes, always |
| User account creation, modification, deletion, privilege change | Yes |
| Electronic signature and approval events | Yes |
| System configuration of validated parameters | Yes |
| Changes to non-GxP administrative data | Risk-based |
| Training or scheduling records in a non-GxP module | Risk-based, depends on use |
The scope decision must be documented, ideally in the system risk assessment or the validation package. A risk assessment that explains why certain event types are captured and others are not is defensible. An undocumented configuration that simply happens to exclude something is not, because you cannot show it was a deliberate, justified choice rather than an oversight. The CSV risk assessment methodology and data criticality and data risk articles walk through how to make and record these scoping decisions.
Acceptance criteria. Scope is defensible when every excluded event type has a written, risk-based justification, and when an inspector who challenges an exclusion can be shown the document that made the call deliberate.
Audit Trail Review: The Operational Challenge
A complete audit trail is necessary but not sufficient. Regulators expect audit trails to be reviewed, not merely captured and archived. This is where most programs struggle, because volume defeats good intentions. The companion article operationalizing audit trail review goes deeper on building the review program itself; this section gives you enough to run and defend one.
A single mid-sized QC operation can generate tens of thousands of audit entries a week across CDS, LIMS, and MES. No human reads that line by line, and pretending otherwise produces a review record that is fiction. A risk-based, partly automated approach is both acceptable and expected. The 2018 FDA Q&A guidance states that audit trails subject to regular review should include, at minimum, the change history of finished product test results, changes to sample run sequences, changes to sample identification, and changes to critical process parameters. It also ties the review to release: routine scheduled audit trail review based on the significance of the data should be part of the procedures that lead to batch disposition.
What review means in practice
A qualified reviewer, independent of the person who generated the data, examines the trail for anomalies: entries that do not fit the expected pattern, a result changed several times before it was finalized, activity outside normal working hours, deletions, reprocessing without a recorded reason, or edits made after the record was reviewed. The review produces its own record: what system, what period, what scope, who reviewed, what was found, and what was escalated. A review that leaves no evidence it happened is, from an inspector’s standpoint, a review that did not happen.
A step-by-step review procedure
- Define the scope before you start: which system, which date range, which records (this batch, this campaign, this monthly cycle).
- Pull the trail for that scope from the live system, not from a pre-filtered report you did not generate yourself.
- Apply the agreed risk-based filters (see “Review by exception” below) to surface candidate entries.
- For each surfaced entry, decide one of three outcomes: routine and explained, needs a question to the originator, or needs escalation to a deviation or investigation.
- Resolve the questions, capturing the originator’s explanation in the review record where it is not self-evident.
- Escalate anything unresolved or suspicious into deviation management or the relevant investigation channel.
- Sign and date the review record, stating scope, what was examined, what was found, and what was escalated.
- For batch-linked reviews, complete the review before disposition so the result can feed the release decision.
When review should occur
At a minimum:
- As part of batch record review, covering the systems used for that batch, before disposition. See batch record review.
- On a defined periodic cycle (often monthly or quarterly) for each GxP system, with documented results, to catch patterns that a single-batch view misses.
- As part of any out-of-specification or out-of-trend investigation, covering the relevant time window and systems. See the OOS investigation process.
- Before and after any change that could touch audit trail configuration, under change control.
Review by exception
For high-volume systems, it is acceptable to apply rule-based or statistical filters that surface a small set of entries for focused human review rather than reading every line. The filtering logic itself becomes a controlled, documented, and ideally validated artifact, because a filter that silently drops a category of events is a control gap hiding as efficiency. Common filters:
- Entries made outside defined working hours (state the threshold).
- The same field modified more than N times within a defined window.
- A modification that moved a result across a specification or action limit.
- Entries attributed to a user not associated with the batch or sample.
- Any deletion, any reprocessing, any change of sample identity (these always warrant a look).
A worked review-record example
Here is what a defensible periodic review record looks like, filled in:
| Field | Entry |
|---|---|
| System / module | CDS, QC chromatography |
| Review period | 2025-05-01 to 2025-05-31 |
| Total entries in period | 41,290 |
| Filters applied | After-hours edits; result crossing spec; >3 edits on one field; any deletion or reprocess without reason |
| Entries surfaced for review | 36 |
| Findings | 34 routine and explained; 1 reprocess with a blank reason (corrected, originator coached); 1 result edit after review sign-off, escalated |
| Escalations | 1 deviation raised (DEV-2025-0612) for the post-sign-off edit |
| Reviewer / date | Independent reviewer, signed 2025-06-03 |
AI-assisted review
AI-assisted review is increasingly common: a model or rules engine triages the trail, ranks entries by anomaly likelihood, and presents the top set for human judgment. This is a legitimate efficiency, but the tool must be validated for its intended use, the human decision step must remain and be documented, and the filter must fail safe, meaning an error pushes more entries to human review rather than fewer. The building AI tools for GxP and validating AI in GxP systems articles cover the validation expectations.
Acceptance criteria. The review program is defensible when the reviewer is independent of the data originator, the scope and frequency are defined in a procedure, the filters are documented and justified, each review produces a signed record, batch-linked reviews precede disposition, and escalations are traceable into the quality system.
Deleted and Orphaned Records
Deleted records and orphaned data are among the most serious findings an inspection can produce, because they go to whether all results were retained and reported, not just whether a single value was edited.
Deletion controls. Under Part 11 and the data integrity guidances, deletion of GxP records should either be impossible for normal users or restricted to a tightly controlled process with documented justification and a second-person approval. The trail must record the deletion itself, including who deleted what and when, in a way the deleting user cannot then erase. A system where a single administrator can permanently remove a result, an audit entry, or a whole sequence with no second control and no surviving record is a critical gap, and inspectors know exactly where to look for it.
Orphaned data. Inspectors look for data that exists in one place but not another. The classic signature: an instrument’s injection or sequence log shows runs were performed, but those runs never appear in the LIMS or the batch record. That pattern is the fingerprint of “testing into compliance”, where unfavorable results were generated, then discarded, and only the passing run was reported. It is one of the most damaging findings possible because it implies the reported record is not the complete record.
To find orphaned data before an inspector does, reconcile across systems:
- Instrument sequence and injection logs against LIMS sample records.
- CDS raw data files (including any “trial” or aborted runs) against reported results.
- Instrument logbooks and use logs against electronic system records.
- Total injections on the column or detector against the number of reported results plus documented system suitability and blanks.
A worked reconciliation example
| Source | Count |
|---|---|
| Injections on instrument sequence log (one day, one instrument) | 48 |
| Reported sample results in LIMS | 30 |
| Documented system suitability injections | 6 |
| Documented blanks and standards | 8 |
| Documented aborted runs with recorded reason | 2 |
| Accounted for | 46 |
| Unexplained gap | 2 |
In this example, 2 injections appear on the instrument but match nothing in the documented record. Each must be run down: a legitimate column equilibration injection that was not logged, or a real test result that never reached the LIMS. The second possibility is the one that ends careers. Build this reconciliation into internal audit and self-inspection so you find and explain the gaps on your own terms. The data integrity self-audit checklist gives a structured way to run this routinely. Chromatography data system integrity covers the CDS-specific traps in depth.
Acceptance criteria. Deletion and orphan control is sound when no single person can both delete a GxP record and erase the evidence of the deletion, when a deleted-records report exists and is reviewed, and when cross-system injection-to-result reconciliation closes to zero unexplained items.
Roles and Responsibilities
Audit trail control fails when no one owns a given piece. Map the responsibilities explicitly, typically in the data governance framework and the system procedures. See data governance framework and GxP roles and responsibilities.
| Role | Owns |
|---|---|
| System owner (business) | That the trail is configured for the right scope; that periodic review happens; that findings are actioned |
| Process owner / lab manager | That reviewers are qualified and independent; that review is scheduled and completed before disposition |
| Quality Assurance | Approving the review procedure and filters; oversight of escalations; inspection defense of the program |
| IT / system administrator | Server-side timestamps, NTP, append-only storage, backup and restore of the trail; explicitly NOT deleting or editing GxP entries |
| Validation | Verifying audit trail configuration during qualification and re-verifying after change |
| Reviewer | Performing the review, recording it, escalating anomalies; must be independent of the data originator |
| Data originator (analyst, operator) | Entering accurate data, providing reasons for changes, answering review questions truthfully |
The single most important segregation: the person who can administer the system (IT) must not be able to silently alter or remove GxP audit entries, and the person who generates the data must not be the person who reviews their own trail. Where small-organization staffing makes full segregation hard, document a compensating control, for example an independent second reviewer for any self-reviewed work.
What an Inspector Does at a Workstation
Understanding the inspection method helps you assess your own systems with the right eyes. Based on documented inspection practice and public guidance on inspecting computerized systems:
-
The inspector opens the CDS or LIMS directly, not through reports or summaries. They go to the live raw data, not the extracted PDF, because the PDF only shows what someone chose to print.
-
They pull the audit trail for a specific batch and read it chronologically. They are looking for editing patterns: values changed after a result was reviewed, repeated iterations on the same field, reprocessing without a stated reason.
-
They check the instrument sequence log against the batch record to confirm every injection is accounted for and nothing is missing between the bench and the report.
-
They look at the user and role list and ask who holds administrative access. They specifically check whether any account can modify or delete audit trail entries, and whether segregation of duties is real or nominal. See CSV cybersecurity and access control.
-
They check system time and ask for the NTP synchronization evidence or the documented clock verification procedure and its records.
-
They request the deleted records report if one exists. Where deletion is allowed, they want to know what, who, and when, and whether a justification was recorded.
-
They interview the analyst or administrator about a specific entry, edit, or cross-system discrepancy they have already spotted, asking the person to explain it on the spot.
The common thread is simple: they are looking for daylight between what the official record says happened and what the system logs show actually happened. Every discrepancy is a potential finding. Every unexplained gap between two systems is a potential finding. The FDA inspection readiness and managing a live inspection articles cover how to prepare people and systems for exactly this.
System Configuration: Where Audit Trails Break
The most actionable part of audit trail compliance is getting the configuration right during validation and keeping it right across the system lifecycle. Most failures are not subtle; they are settings nobody verified.
Configuration items to confirm and document during validation:
- Audit trail enabled for all GxP-relevant tables and fields, not just system-level login and logout events.
- Prior value captured for every field-level modification (Tier 3), with a reason prompt where the data is critical.
- Timestamps server-generated and NTP-synchronized, with the time zone convention documented.
- No user, including the system administrator, can disable, edit, or clear the audit trail outside a documented and controlled process that itself leaves a record.
- Audit entries are protected from modification, typically stored in append-only tables or an equivalent immutable store.
- Backup and disaster recovery include the audit trail data, and a restore actually returns it intact. See backup, restore, and disaster recovery validation.
- Audit entries are retained at least as long as the records they describe.
How to test each item
Configuration claims are worthless until you have proven them by trying to break them. Sample test steps:
| Configuration claim | Test step | Pass criterion |
|---|---|---|
| Prior value captured | Edit a result, then open the trail | Old and new value both shown, plus reason |
| Reason enforced on critical fields | Try to save a critical edit with no reason | System blocks the save |
| Trail is immutable | Log in as administrator, attempt to edit or delete an entry | No path exists to alter it; attempt is itself logged |
| Deletion controlled | Attempt to delete a record as a normal user | Blocked; as a privileged user, requires justification and second approval, both logged |
| Server-side time | Change the client clock, then create a record | Entry timestamp reflects server time, not the client |
| Trail survives restore | Restore from backup into a test environment | Trail returns complete and readable |
Periodic re-verification. Audit trail configuration can be silently altered by a software upgrade, a patch, or a routine application change. A new version may reset a setting to its default, which is often the non-compliant Tier 1 or Tier 2 state. Put audit trail configuration verification into the change control process for any system modification, and into the periodic review cycle for validated systems, so that “still on” is confirmed rather than assumed. The Computer Software Assurance framework (FDA guidance issued as a 2022 draft, finalized in 2025, and revised 3 February 2026) and GAMP 5 framework describe how to document and validate these controls within the system lifecycle.
Hybrid Systems and Paper Records
Not everything is electronic, and hybrid arrangements often carry the highest risk because the controls live in two different places and the seam between them is easy to ignore. See hybrid paper and electronic records for the full treatment.
For paper records, the audit trail equivalent is built from good documentation practice:
- Corrections made in ink with a single line through the original so it stays legible, plus the date, the initials of the person correcting, and a reason where the change is not self-evident. Never correction fluid, never writing over the original, never erasing.
- A clear cross-reference between the paper record and any electronic source data, so the two can be reconciled.
- Verified transcription with a documented second-person check whenever a value is copied from an instrument to paper.
A correctly executed paper correction looks like this: the original entry 12.4 has a single line through it (still readable), the new value 12.7 written beside it, initialed JD, dated 04-Jun-2025, with a short reason such as “misread, re-confirmed against display”. That is the paper version of a Tier 3 audit entry, and it carries the same who/what/when/old/new/why.
See good documentation practices for the full set of conventions.
For hybrid systems, the integrity requirements apply at both layers and to the link between them. The electronic instrument data is the original record. The paper transcription is a secondary record. Both must be retained, the electronic source cannot be discarded once it is transcribed, and the transcription step must include a verified accuracy check. A frequent finding is exactly this: an instrument produces a complete electronic record with its own audit trail, an analyst transcribes one number onto a form, the form gets reviewed, and the richer electronic original is never looked at again. The audit trail that mattered was never reviewed. The distinction between the dynamic electronic original and the static paper copy is covered in static and dynamic records and true copies.
Common Mistakes and Inspection-Finding Patterns
These are the patterns that recur across enforcement actions, stated generically:
- Trail switched off or at Tier 1/Tier 2. Capable system, default configuration never raised to capture prior values. The most common technical root cause.
- Captured but never reviewed. A complete trail sits archived; no procedure, no schedule, no records of review. From an inspector’s view this is no review at all.
- Review with no evidence. Reviewers say they look, but produce nothing showing scope, period, findings, or escalations.
- Reviewer not independent. Analysts reviewing their own trails, which removes the entire point of independent review.
- Shared or generic accounts. “Admin” or a shared login breaks attributability; the trail cannot answer “who”.
- Administrator can edit or clear the trail. A single privileged account that can alter history with no second control and no surviving record.
- Reprocessing without a recorded reason. Re-integration or recalculation that moves a result, with no justification captured.
- Orphaned injections. Runs on the instrument that never reached the reported record, the fingerprint of testing into compliance.
- Backdating via the clock. Undocumented backward clock changes near a contested timestamp.
- Configuration drift after upgrade. A patch resets the trail to default and nobody re-verified, so months of records were under-captured.
- Hybrid blind spot. The electronic original with its rich trail is ignored because the paper transcription was reviewed instead.
Interview Questions and How to Answer Them
Expect these in a data integrity, QA, or validation interview, and from inspectors.
“What does 21 CFR Part 11.10(e) actually require?” Secure, computer-generated, time-stamped audit trails that independently record the date and time of operator actions which create, modify, or delete electronic records, and record changes that do not obscure previously recorded information. That last clause is the basis for capturing prior values, not just the fact of a change.
“What is the difference between an audit trail being present and being adequate?” Present means the system logs something. Adequate means Tier 3: who, what field, when, the old value, the new value, and a reason where required, immutable and retained for the record’s full life. Many systems are present but not adequate because they log the event without the prior value.
“How do you review audit trails when there are tens of thousands of entries a week?” Risk-based review by exception: documented, justified filters surface a small candidate set for independent human judgment, every review produces a signed record, and the highest-risk events (deletions, reprocessing, result edits crossing a limit, after-hours activity) always get a look. Reading every line is fiction; the filter logic itself is a controlled, validated artifact.
“How would you detect testing into compliance?” Reconcile the instrument injection or sequence log against reported results, accounting for system suitability, blanks, standards, and documented aborted runs. Any injection on the instrument that does not map to a documented outcome is an orphan that has to be explained.
“Who should be able to delete a GxP record, and what must happen when they do?” Ideally no one for normal users. Where deletion is unavoidable, it is restricted, requires documented justification and second-person approval, and the deletion itself is recorded in a way the deleting user cannot erase.
“How do you make sure the timestamps are trustworthy?” Server-side generation, NTP synchronization qualified during infrastructure qualification and monitored for drift, a documented time zone convention, and explainability of any clock change in the relevant window.
“A software upgrade just went live. What is your audit trail concern?” That the upgrade reset the trail configuration to a default, often a non-compliant tier. Re-verify the configuration under change control before and after, and capture it in periodic review.
“What is the audit trail equivalent for a paper record?” Good documentation practice: single-line strike-through that keeps the original legible, plus initials, date, and a reason where not self-evident, with verified second-person transcription checks at any instrument-to-paper hand-off.
The Durable Principle
An audit trail exists to answer one question about any piece of GxP data: what happened to this record, who touched it, when, and what was it before. If your trail can answer that completely and traceably for any data point, in any system, for the full retention period, the foundational work is done. If it can answer only for some records, only for some actions, or only for some periods, you have a gap, and the gap is exactly the kind of thing a determined inspector finds.
Build the trail first, then build the review around it. Many organizations do this backwards. They bolt audit trail review onto existing procedures without first proving the trail itself is complete and captures prior values. The review of an incomplete trail is not a control. It is a record of having looked at the wrong thing carefully.