Requires ADMIN_TENANT. There is no local-admin view of the tenant-wide log, and the same permission gates the log tabs that appear on individual records.

Reading an entry
Click the arrow at the start of a row to expand the details. For an edit, the details show only the fields that actually changed, each with its old and new value. Fields whose value did not really change are dropped before storage, as is the automatic “last updated” timestamp, so the detail block is the real diff rather than a dump of the whole record. For a deletion, the details hold a snapshot of the key fields as they were just before the record went away.
Entries are 15 to a page, newest first.
Filtering
The pills above the table combine, and the result is written into the page URL, so a filtered view can be bookmarked or pasted to a colleague.
Refresh re-runs the current filter.
What gets recorded
Record merges are logged too, but they are not offered in the Action filter. Review them on the merge history page instead.
What is not recorded here
- Logins are not in this log.
- Email delivery is not in this log. Use the email log.
- Webhook deliveries have their own log on each webhook subscription.
- Imports report per-row results on the import itself, not here.
- Changes made without a signed-in account produce no entry. A visitor registering for a public event, for example, creates the attendance but no log row, because there is nobody to attribute it to.
The Entity filter is narrower than the table
The Entity column and filter are populated for deletions and for saved-query exports. Most edit entries identify their subject through the User column instead and carry no entity type, so filtering by, say,User will not return profile edits. To review edits to one member, filter by User, or open that member’s profile and use its own log tab.
The filter dropdown is also a fixed list, and it is shorter than the set of entity types the table displays. Tag changes (ProfileTag) and note deletions (UserNote, ContactNote) write rows that show their type in the Entity column but have no option in the filter, so they cannot be narrowed down that way. Filter by User and Action instead, or read them in order on that person’s Activity tab.
The IP and impersonation columns
The IP address is captured from the browser request that made the change, so entries written from an asynchronous handler rather than directly from the request carry no IP in that column. Encrypted custom field reads are the notable case: they are recorded asynchronously, and their IP is stored inside the details block instead. Deletion entries also record an impersonator when the deletion happened while an administrator was viewing the platform as another user. That tells you the account the action was attributed to and the account that actually performed it.The same log, scoped to one record
The tenant-wide page is not the only way in. The same entries appear filtered on:- a member profile, on its logs tab;
- an event attendance, on the attendees screen;
- an adhesion, on its log view.

Retention and export
Entries are kept for as long as your organization exists. Nothing prunes them on a schedule, and deleting your organization removes them along with everything else. The log is strictly read-only: entries cannot be edited or deleted from the interface, and there is no endpoint that would let anyone do so. There is no export button on this page; if you need the entries outside Orgo, read them through the API.Troubleshooting
A change I know happened is not in the log
A change I know happened is not in the log
Three common reasons. It was a cascade or a background job, which are not logged per record. It was a kind of change that has no log action at all (see the table above; not every screen writes an entry). Or the Entity filter is hiding it, because edits generally carry no entity type: clear the filters and narrow by User and date instead.
The IP column is empty on some rows
The IP column is empty on some rows
The address is taken from the browser request that made the change. Entries written from an asynchronous handler rather than directly from the request, such as reading an encrypted custom field, carry no IP. The author is still recorded.
I need to know who deleted a member
I need to know who deleted a member
Filter Action = remove and Entity = User, then expand the row. The snapshot holds the email, first and last name and status the account had at deletion, and the Author column names who did it.
A local admin says the log is empty for them
A local admin says the log is empty for them
It is not visible to them. The log requires ADMIN_TENANT, and that includes the log tabs on individual profiles.
Who read an encrypted custom field?
Who read an encrypted custom field?
Filter Action = decrypt_custom_field. Failed attempts are recorded separately as decrypt_custom_field_failed, and switching encryption on or off for a field is recorded as its own action.

