Founding offer — 25% off applied automatically at checkout. Ends 1 November 2026 or after our first 30 orders. See pricing →
← Back to Policy Management Changelog Skip to document content

The Acknowledgement System

The acknowledgement system is the core of the plugin’s governance features. It lets you require staff to confirm they have read and understood a document, keeps a dated record of every confirmation as compliance evidence, and makes people re-confirm when the document changes or their confirmation expires.

This page covers how acknowledgements work, how to switch them on for a document, expiry and re-acknowledgement, the optional read-time and comprehension gates, the staff-facing pages, and the admin Acknowledgements screen. Campaigns, user lists and every reminder email are covered in Acknowledgement Campaigns, User Lists & Reminders. Locking a page until documents are acknowledged is covered in Page Gating.

Who this is for: administrators and compliance managers who set acknowledgement requirements, and the staff who acknowledge documents.


Turning the acknowledgement system on or off

The acknowledgement system is on by default. The switch is Enable Acknowledgement System on Policy Management → Settings → Features (“Allow documents to require user acknowledgement”).

When you turn it off:

  • the acknowledgement box no longer appears on any document;
  • the Acknowledgements screen, the Ack Campaigns screen and the Acknowledgement Content & Comprehension box in the editor are hidden;
  • no scheduled acknowledgement reminders, follow-ups or annual compliance emails are sent, and a new document version no longer asks anyone to re-acknowledge.

Existing acknowledgement records are kept. Turning the system back on picks up where it left off.


How acknowledgements work

When a document requires acknowledgement, logged-in staff who are in its acknowledgement audience — and who are allowed to view the document — see an Acknowledgement Required box at the end of the document. Logged-out visitors never see the box.

The box contains:

  • an introduction — your own Introduction/Explanatory Text if you wrote one, otherwise “You are required to acknowledge that you have read and understood this document (version …)”;
  • a checkbox with the statement “I have read and understood this document”, or your own Checkbox Statement Text;
  • the hint “Confirm you’ve read this document to enable acknowledgement.”;
  • a short privacy notice telling the reader what is recorded (and, when read-time capture is on, that their reading time and scroll reach are recorded too);
  • the Acknowledge button, which stays disabled until the box is ticked and any quiz or reading requirement is met.

What happens when someone acknowledges

  1. The reader ticks the checkbox and clicks Acknowledge. The page does not reload.
  2. The plugin records the acknowledgement (see What is recorded below).
  3. The box changes to Thank you! — “You have acknowledged this document.” — with the expiry date.
  4. If the reader has other documents still waiting, a Next required document: link to one of them appears underneath, so they can carry on without hunting for it.
  5. The reader is sent an Acknowledgement Confirmed email.
  6. Compliance figures on the admin screens update straight away.

On later visits the box shows Acknowledged — “You acknowledged version … on …” — with “Expires: …”. It always names the version the person actually acknowledged, not the document’s current version.

Clicking Acknowledge again while an acknowledgement of the current version is still valid does not create a second record. Once an acknowledgement has expired or stopped counting, acknowledging again creates a fresh record with a new expiry date.

What is recorded

Each acknowledgement is stored as one record containing:

Field Notes
Person and document The user account and the document acknowledged.
Version The document’s version number at that moment.
Content fingerprint A fingerprint of that version’s content, so you can later show exactly what was acknowledged.
Date and time Stored in UTC and shown in your site’s time zone and date format.
Expiry date Worked out from the document’s expiry settings (see below).
Role at the time The person’s WordPress role when they acknowledged.
IP address Recorded by default. Turn off with Record IP Address with Acknowledgements.
Statement text Your custom checkbox statement, if the document has one.
Reading time and reach Only when Capture Read Time and Reading Reach is on, and only when the person acknowledged themselves.
Quiz trail The questions shown, the answers given and the score, when the document has a comprehension quiz.
Source Whether the person acknowledged themselves or an administrator recorded it on their behalf, plus who did so and why.
Integrity fingerprint A tamper-evidence check over the record’s key fields.

Records are kept as compliance evidence. By default, acknowledgement records older than 7 years (by acknowledgement date) are deleted automatically by a weekly clean-up job. Export anything you need to keep longer — see Compliance Reporting & Attestation Exports.


Requiring acknowledgement on a document

  1. Open the document in the block editor.
  2. In the right-hand sidebar, open the Acknowledgement panel.
  3. Turn on Require acknowledgement.
  4. Under Who must acknowledge, tick the Target roles and/or Target user lists whose members must acknowledge it. (User lists are named groups of people — see User lists.)
  5. Under Timing, choose the Expiry type (see Acknowledgement expiry below).
  6. Save or publish the document.

While acknowledgement is required, an Acknowledgement Content & Comprehension box appears below the editor. Use it for:

  • Introduction/Explanatory Text — shown above the checkbox. Basic formatting (bold, italic, lists, links) is allowed. Leave blank for the default sentence.
  • Checkbox Statement Text — shown next to the checkbox. Leave blank for “I have read and understood this document”. This text is also printed on the PDF certificate.
  • Acknowledgement Campaigns — tick any campaigns this document belongs to (see Acknowledgement campaigns).
  • Comprehension quiz — see The comprehension gate below.

The sidebar panel summarises these (statement custom or default, quiz on or off) with an Edit content & quiz ↓ button that jumps to the box. The summary reflects the last saved version of the document.

Who is asked to acknowledge

The audience is everyone in the ticked roles plus everyone in the ticked user lists. A person must also be able to view the document — if your visibility or confidentiality settings hide the document from someone, they are not offered the acknowledgement box.

If you leave both roles and lists empty: when you save, the plugin applies the site default audience chosen in the Setup Wizard, and the panel tells you which roles that will be (“No audience set on this document — the site default audience will apply on save: …”). If there is no site default either, the panel warns “⚠ No audience set — no one will be asked to acknowledge.” Such a document asks nobody to acknowledge and adds nothing to compliance figures.

When the document already has a restricted viewing audience, the roles you ask to acknowledge are added to that viewing audience on save, so everyone asked to acknowledge can open the document.


Acknowledgement expiry

Every acknowledgement has an expiry date. After that date the person must acknowledge again, which builds periodic review into your process without you chasing anyone.

Choose the expiry type per document under Timing in the Acknowledgement panel:

Expiry type How the expiry date is worked out
Rolling days (default) The acknowledgement date plus the Renewal period (days). Leave the period blank to use the site’s Default Acknowledgement Period.
Annual date The next occurrence of a fixed Annual expiry date (format MM-DD, e.g. 01-31).
Period schedule The next boundary date in one of your Acknowledgement Expiry Schedules (for example a semester or trimester calendar).

For Annual date and Period schedule, the acknowledgement expires at the end of the boundary day. If the next boundary is closer than the longest lead time in your Individual document reminder schedule (30 days by default), the plugin skips to the following boundary. That way a person who acknowledges in response to a reminder isn’t asked again a few days later.

Expiry settings

On Policy Management → Settings → Acknowledgements & Notifications, in the Acknowledgement Settings section:

Setting What it does Default Allowed values
Default Acknowledgement Period Days until an acknowledgement expires, for documents on Rolling days with no renewal period of their own. 365 1–3650
Acknowledgement Expiry Schedules Named schedules (Schedule Name, Boundary Dates (MM-DD), e.g. 01-15, 07-15) that you can pick as a document’s Period schedule. Use + Add Schedule and Remove. None Any number of schedules

There is no “never expires” option. For a very long cycle, set a large rolling period (up to 3650 days).

When a new version is published

The Re-Acknowledgement Trigger Level setting (same section) decides which version changes make existing acknowledgements stop counting:

Option Effect
Major changes only (recommended) — default Only a major version change (for example 1.4 → 2.0) requires everyone to acknowledge again.
Minor and major changes Minor changes (1.4 → 1.5) also require re-acknowledgement.
All changes (patch, minor, and major) Every version change requires re-acknowledgement.

When a qualifying version goes live — or, if you use version approval, when it is approved — acknowledgements of the older version stop counting regardless of their expiry date. About a minute later, a background job emails everyone in the audience who no longer has a valid acknowledgement an Updated Document Requires Acknowledgement email. Smaller changes leave existing acknowledgements valid.

On the staff member’s own status list, an acknowledgement of a superseded version shows as Outdated.


Recording IP addresses

Record IP Address with Acknowledgements (Acknowledgement Settings section) is on by default. The address recorded is the one your web server sees for the request. If your site sits behind a proxy or content delivery network, ask your host or developer to pass the real visitor address through to WordPress, otherwise every record carries the proxy’s address.

Turning the setting off only affects acknowledgements made from then on; existing records keep their IP address.

Note: The privacy notice in the acknowledgement box mentions the device IP address even when this setting is off. If you turn IP recording off, ask your developer to adjust the notice wording.


The read-time gate

The Free plugin can record how long each person spent on a document and how much of it they actually viewed before acknowledging. Enforcing a minimum is a Pro feature.

Recording reading time (Free)

  1. Go to Policy Management → Settings → Acknowledgements & Notifications.
  2. Tick Capture Read Time and Reading Reach (off by default) and save.

From then on, each acknowledgement a person makes themselves stores:

  • reading time — how long the document was open, capped at 4 hours;
  • reach — the percentage of the document’s content blocks the reader paused on for at least half a second.

Figures appear in the Reading record column of the acknowledgement logs and are included in the attestation export. The acknowledgement box’s privacy notice tells readers this is being recorded.

Show Users Their Reading Record (on by default, shown while capture is on) lets staff see their own reading time and reach on their My Acknowledgements page.

Acknowledgements recorded by an administrator on someone’s behalf never carry reading figures.

🔒 Pro feature — requires the Pro plugin.

Enforcing a minimum (Pro)

With Pro, the recorded figures become a gate: the Acknowledge button stays disabled until the reader has spent a minimum time on the document and viewed a minimum share of its content.

Setting it up: with Capture Read Time and Reading Reach on, two more settings appear in the Acknowledgement Settings section:

Setting Effect Default Allowed values
Minimum Reading Time (seconds) The button stays disabled until this many seconds have passed. 0 records without enforcing. 0 0–14400 (4 hours)
Minimum Reading Reach (%) The button stays disabled until the reader has viewed at least this share of the content blocks. 0 records without enforcing. 0 0–100

The minimums apply to every acknowledgement-required document on the site.

What readers see: “This document has a minimum reading time before it can be acknowledged.”, a countdown (“About … seconds of reading time left.”), and then “Minimum reading time met. You can now acknowledge this document.” If someone gets around the disabled button, the acknowledgement is still refused with a message such as “Please continue reading. Minimum reading time is 60 seconds (you have 20).”

Progress is saved between visits. If a reader leaves part-way through, their reading time and reach are saved and resume when they return, so they don’t start from zero. Saved progress is cleared once they acknowledge, or when a new version requires re-acknowledgement. A daily clean-up job deletes progress that hasn’t been touched for 30 days.

The minimums in force are recorded on each acknowledgement alongside the reader’s figures, so your evidence shows the standard that applied.

Without Pro, these two settings don’t appear and capture is record-only.


The comprehension gate

The comprehension gate adds a short quiz to a document. Readers must pass it to acknowledge, which is stronger evidence of understanding than a click-through. It is part of the Free plugin.

Adding a quiz to a document

  1. Open the document (acknowledgement must be required).
  2. In the Acknowledgement Content & Comprehension box below the editor, find Comprehension quiz.
  3. Tick Require a passing comprehension quiz before acknowledgement.
  4. Click + Add Question and type the question.
  5. Choose the Type:
    • Single choice — 2 to 6 options, one correct;
    • True / False — exactly 2 options, one correct;
    • Multiple correct — 2 to 6 options; the reader must select exactly the correct set.
  6. Use + Add option for more options and mark the correct one(s).
  7. Repeat for more questions.
  8. Optionally set Questions to show per attempt and Passing score (%) for this document. Leave them blank to use the site defaults.
  9. Save the document.

Questions with empty text, a blank option or no correct answer marked are dropped when you save. If the quiz is ticked but no valid questions remain, the gate is off for that document and the sidebar shows “⚠ Comprehension: on, but no questions added yet.”

When the pool holds more questions than are shown per attempt, each attempt draws a random selection, so staff can’t simply share answers.

What readers experience

  1. A Quick comprehension check appears in the acknowledgement box.
  2. The Acknowledge button unlocks once every question has an answer. (The on-screen instruction says “Please answer every question correctly to enable the acknowledge button”, but the button actually unlocks once all are answered, and marking happens when they click.)
  3. On Acknowledge, answers are marked. The score is the percentage of questions answered correctly. Below the pass mark, the reader sees “You scored …%. The passing mark is …%. Please review the document and try again.”
  4. After the Failed Attempt Limit, the reader must wait out the Cooldown Period (“You have reached the maximum number of attempts. Please try again later.”).
  5. On a pass, the acknowledgement is recorded with the questions shown, the answers given and the score.

A quiz must be submitted within 30 minutes of being issued. After that the reader sees “Your comprehension quiz session has expired. Please reload and try again.”

Site-wide quiz defaults

Settings → Acknowledgements & Notifications → Comprehension Gate:

Setting Effect Default Allowed values
Questions Per Attempt How many questions are drawn per attempt (fewer if the pool is smaller). 3 1–20
Passing Score (%) Minimum percentage correct to pass. 80 1–100
Failed Attempt Limit Failed attempts before the cooldown starts. 3 1–10
Cooldown Period (hours) Wait after reaching the limit. 24 1–168

The per-document Questions to show per attempt and Passing score (%) override the first two.

The comprehension gate works alongside the Pro read-time gate. Readers must then meet the reading minimums and pass the quiz.

🔒 Pro feature — requires the Pro plugin.

Question review after a new version (Pro)

When Pro’s AI features are on and a document with an active quiz gets a minor or major version approved, Pro asks the AI to check every question against the updated content:

  • questions still answered by the content stay in the live pool;
  • questions whose content changed are moved out of the live pool and flagged Needs review;
  • questions whose content was removed are flagged Removal suggested;
  • the AI may also propose New suggestion questions for new material (4 options, 1 correct).

A notice on the document’s edit screen tells you how many questions need review. In the review panel inside the comprehension area, use Restore to pool or Approve to put a question into the live pool, or Remove or Discard to drop it. After approving, save the document to keep the change (“Added to live pool. Save the document to keep it.”).

Only people who can edit the document can act on review items, and the review only runs when AI features are enabled. Patch changes are never reviewed. Flagged questions are left out of quizzes until you restore them, so check the pool still has enough questions.

Note: The review panel only handles four-option, single-answer questions. A True / False or Multiple correct question that the review flags is taken out of the live pool but may not appear in the review panel to restore — re-add it by hand if needed.


Acknowledging on behalf of someone

Sometimes a person acknowledges on paper, or can’t use the site. An administrator can then record the acknowledgement for them.

Turn it on: Allow Acknowledge on Behalf → Enable proxy acknowledgement by administrators (Acknowledgement Settings section). It is off by default.

Record one:

  1. Go to Policy Management → Acknowledgements → Overview.
  2. Click View Pending (or the pending count) on the document.
  3. In the Pending Acknowledgements window, click Acknowledge on Behalf next to the person.
  4. Confirm (“Acknowledge this document on behalf of …? This action is recorded in the audit trail.”) and enter a Reason for delegation (required).

The record is marked as acknowledged on behalf, with who recorded it and the reason, and these details appear in the attestation export and the user report CSV (Ack Source). The person is still sent the usual confirmation email. No reading figures or quiz results are attached. You can’t record on behalf of someone who already has a valid acknowledgement (“User already has a valid acknowledgement for this document.”).


Showing staff their own status

Three shortcodes give acknowledgement status on the front end of your site. All three only show documents the viewer is allowed to see.

My Acknowledgements —

The Setup Wizard can create a My Acknowledgements page with this shortcode, or you can add it to any page. Logged-in staff see a table of every document they must acknowledge:

  • Document (linked), Status, Acknowledged On, Expires, Version;
  • Reading record — reading time and reach, when read-time capture and Show Users Their Reading Record are on.

Status is one of Acknowledged, Pending (never acknowledged), Expired, or Outdated (they acknowledged an older version that no longer counts). Logged-out visitors see “Please log in to view your acknowledgements.” If nothing applies, the page says “No acknowledgement requirements found.”

Attribute Default Effect
show_acknowledged true Set to false to hide documents already acknowledged.
show_pending true Set to false to hide pending, expired and outdated documents.
user_id (current user) Show a specific person’s status. Only administrators who can manage users may view someone else’s; others see a permission message.
heading_level 2 Heading level for the title shown when viewing another person.

Tip: Link this page from your staff intranet menu. When staff can easily find what they still owe, compliance improves.

Compliance progress —

A personal progress summary for the logged-in person: a progress bar (“…% complete — … of … documents acknowledged”), an Action Needed list (Expired and Pending documents) and an Expiring Soon list (valid acknowledgements expiring within 30 days, with days left). One attribute: heading_level (default 2). Logged-out visitors are asked to log in; people with nothing to acknowledge see “You have no acknowledgement requirements.”

Looking up another person —

A front-end lookup tool for administrators who manage users (for example on a private managers’ page). It shows a Select User: dropdown, and choosing a person loads their status in place: Acknowledged, Pending and Total Required counts, an average comprehension score where quizzes apply, and a table with Document, Status, Acknowledged On, Expires, Version and Comprehension.

Attribute Default Effect
role subscriber Only list people with this role in the dropdown.
role__in (empty) Comma-separated roles. Only used when you also set role="".
show_pending / show_acknowledged true Hide either group of documents.
orderby / order display_name / ASC Sort the dropdown.
heading_level 3 Heading level for the person’s name (2–6).

Anyone else sees “This tool is limited to administrators who manage other users.” with a link to view their own acknowledgements.


The Acknowledgements screen

Go to Policy Management → Acknowledgements (title Document Acknowledgements). Shortcut cards link to Acknowledgement Settings (and, with Pro, the Compliance Dashboard). The screen has four tabs.

Overview

One row per acknowledgement-required document with Required, Completed, Pending, Earliest Expiry, Completion % and Actions, plus a Search Documents box. View Pending opens the Pending Acknowledgements window, listing each outstanding person (User, Email, Role) with:

  • Send Reminder — email that person now;
  • Send Reminder to Selected / Schedule… — remind several people now or at a set time;
  • Acknowledge on Behalf — when proxy acknowledgement is on.

How these reminders behave is explained in Sending reminders by hand.

Acknowledgement Logs

The 500 most recent acknowledgement records, newest first, with an optional Filter by Document:. Columns: User, Document, Version, Acknowledged At, Expires At, Reading record and IP Address.

Reports

Choose a Report Type and click Generate Report:

  • User — User Acknowledgement Report for one person: Acknowledged / Pending / Total Required, average comprehension, and a per-document table. A Reminders opted out badge appears if the person has turned off reminder emails. Export CSV downloads their status (document, version, status, dates, comprehension score, acknowledgement source).
  • Policy — Policy Acknowledgement Report for one document: every audience member with status and dates, plus the completion rate.
  • Campaign — see Campaign progress.
  • Outstanding Users Report — everyone with at least one outstanding acknowledgement, with counts and a View Report link.

The user dropdown lists up to 500 people.

Attestation Export

Builds a tamper-evident evidence file of acknowledgement records. See Compliance Reporting & Attestation Exports.

Compliance Overview

Policy Management → Compliance Overview summarises acknowledgement health across the site: overall compliance, acknowledgements expiring in 30 days and already expired, compliance by risk tier and by role, campaign completion, and a list of acknowledgements expiring soon with a Send reminder button on each row. Figures are cached for up to 5 minutes and refresh when someone acknowledges. Full details are in Compliance Reporting & Attestation Exports.


The waiver register

🔒 Pro feature — requires the Pro plugin.

Sometimes a person legitimately can’t acknowledge a document — extended leave, or an approved exception. A waiver records that exception formally, so it doesn’t count against your compliance rate.

  1. Go to Policy Management → Waiver Register and click Add New Waiver.
  2. Choose the Document.
  3. Choose the Scope — Specific user or Role — and pick the user or role.
  4. Enter the Reason and choose who Approved by. Approved by is required before the waiver can be enabled.
  5. Optionally set a Start date and End date. Leave the end date empty for an open-ended waiver.
  6. Tick Enabled and save.

While a waiver is enabled and in date, the person (or everyone in the role) is no longer required to acknowledge that document. They drop out of pending lists, reports, compliance figures and page gates for it. A waiver saved with missing fields shows an “incomplete” notice, and one saved without Enabled shows “This waiver is not enabled.” Each waiver carries an Audit integrity check that warns if the record was changed outside the normal save. Waivers are included in Pro’s Evidence Pack. Full details are in Waiver Register (Pro).

Without Pro, there is no waiver register. Remove a person from the document’s audience instead, or record an acknowledgement on their behalf with a reason.


Who can do what

Task Who, by default
Acknowledge a document Any logged-in person in the document’s audience who can view it
See their own status (, ) Any logged-in person
Turn acknowledgement on for a document, choose audience and expiry, write a quiz Anyone who can edit the document in WordPress (for example administrators and editors)
Open Policy Management → Acknowledgements Administrators and Policy Auditor
Send reminders, schedule reminders, acknowledge on behalf, export the user CSV Administrators only. The Policy Auditor sees the screen in view-only mode: “View-only mode — you can read acknowledgement data but cannot send reminders or act on behalf of users.”
Change acknowledgement settings Administrators
Look up another person (, or user_id on My Acknowledgements) Administrators (anyone who can manage users)

Staff with ordinary roles can’t see other people’s acknowledgements, can’t see documents outside their audience, and can’t reach the admin compliance screens.


Data and privacy

  • Acknowledgement records live in the plugin’s own database table and are included in WordPress’s Export Personal Data tool (document, version, dates, IP, role, source, content fingerprint, reading figures, quiz details, proxy details).
  • WordPress’s Erase Personal Data tool anonymises acknowledgement records by default: the person’s link and IP address are removed, but the document, version and date remain as evidence. See Privacy & Data Management.
  • Records are deleted automatically 7 years after the acknowledgement date.
  • With Pro read-time enforcement, partially-completed reading progress is stored per person and document. It is cleared on acknowledgement and deleted after 30 days of inactivity.

Troubleshooting

A staff member says there’s no acknowledgement box. Check, in order: they are logged in; the document has Require acknowledgement on and is published; their role or one of their user lists is in Who must acknowledge; they can view the document (visibility, confidentiality and effective dates); and the acknowledgement system is on. If they already acknowledged, they see the green Acknowledged box instead.

The Acknowledge button stays greyed out. They need to tick the checkbox. If the document has a quiz, every question needs an answer. With Pro reading minimums, the hint under the button shows the time or reach still needed. After too many failed quiz attempts, they must wait out the cooldown.

“Your comprehension quiz session has expired.” The quiz was left open for more than 30 minutes. Reload the page and answer the new questions.

Everyone has to acknowledge again after a small edit. Check the Re-Acknowledgement Trigger Level. With All changes or Minor and major changes, smaller version bumps also reset acknowledgements. Record minor wording fixes at a level below your trigger.


Worked example — a physiotherapy clinic

Harbourside Physio has 25 clinicians (role Clinician) and 6 front-desk staff (role Reception). The practice manager wants everyone to read the Infection Control Policy each year by 30 June, with clinicians also passing a short quiz.

  1. Settings → Acknowledgements & Notifications: leave Default Acknowledgement Period at 365, keep Re-Acknowledgement Trigger Level on Major changes only, and turn on Capture Read Time and Reading Reach.
  2. On the policy, turn on Require acknowledgement, tick Clinician and Reception, and set Expiry to Annual date 06-30.
  3. In Comprehension quiz, add eight questions (a mix of Single choice and True / False), keep 3 per attempt at the 80% default, and save.
  4. Add to the staff intranet’s “My Policies” page.
  5. Two weeks later, the manager opens Acknowledgements → Overview, clicks View Pending on the policy, selects the four people still outstanding and clicks Send Reminder to Selected.
  6. A clinician on parental leave signed a paper copy. With Allow Acknowledge on Behalf on, the manager records it with the reason “Signed paper copy 12 May — on leave”.
  7. In March, a major rewrite publishes as version 2.0. Everyone’s acknowledgement becomes Outdated and each person receives an Updated Document Requires Acknowledgement email.

Was this helpful?