Tracking Record Changes
Learn how to track when records are created and updated and which user made the change using system fields and record actions in your Knack app.
What You'll Learn
This article shows you how to track when records in your Knack app are created or updated and which user made the change. This is useful for accountability, auditing, and any workflow where you need to know who did what and when.
Tracking When Records Are Created and Updated
Every table in Knack includes built-in system fields that automatically capture timestamps for each record:
- Date Created — the date and time the record was first created
- Date Modified — the date and time the record was last updated
These fields are maintained automatically. You don't need to configure anything for them to work. However, they may be hidden by default.
How to Show System Fields
To make these fields visible in your table:
- Open the table in the Builder
- Go to the table's settings
- Find the system fields section and toggle visibility on for Date Created and Date Modified
Once visible, you can add these fields to table elements, details elements, and other elements in your live app so users can see when records were last touched.
Adding Timestamps to Your Pages
After enabling the system fields, add them as columns to any table element or as fields in a details element where you want users to see the timestamps.
For example, if you have a Projects table, you could add a "Last Updated" column to your Projects table element that displays the Date Modified field. This lets your team see at a glance which projects have been recently updated.
Tracking Which User Made the Change
System fields track when a record changed, but not who changed it. To capture the user responsible for a change, you need to add a connection field and a record action.
Step 1: Add a Connection Field
In the table you want to track, add a connection field that connects to the user role table of the users who will be editing records. Name it something clear like "Last Modified By."
Step 2: Add a Record Action to Your Form
On any form that edits records in this table, add a record action that updates the "Last Modified By" field:
- Open the form element in the Builder
- Go to the Record Actions tab (under Submit Actions)
- Add a new action: "Update this record"
- Set the "Last Modified By" field to the logged-in user
Now, every time a user submits this form, the "Last Modified By" field is automatically set to the user who made the edit.
Add this record action to every form that edits these records. If you have multiple forms that can update the same table (an edit form on one page, inline editing on another), add the record action to each one. Otherwise, edits made through forms without the action won't be tracked.
Step 3: Display the User in Your Live App
Add the "Last Modified By" field as a column in your table elements or as a field in your details elements. Users will see the name of the person who last edited each record alongside the Date Modified timestamp.
Combining Both Approaches
For the most complete tracking, use both approaches together. Your table elements can show:
- Date Created — when the record was first added
- Date Modified — when it was last changed
- Last Modified By — who made the last change
This gives you a lightweight audit trail directly in your live app without needing to build a separate Logs table.
Need a full version history? This approach only tracks the most recent change and who made it. If you need a complete log of every change over time, see Create a Version History for Records.
Next Steps
- Create a Version History for Records — Build a permanent, detailed change log for your records
- System Fields — Learn more about the built-in fields available in every table
- Using Record Actions — Automate actions when records are created or updated
Updated about 1 hour ago
