Hi,
I think it is fine to keep a minimal amount of audit data in the record itself as you propose.
Often I will have four fields like CreateDate, CreateUser, UpdateDate and UpdateUser with the two user fields being keys into my Users table. Then these values are readily and inexpensively available when needed.
Sometimes more change data is required, and an Audit table of some sort can be used to track the actual field changes made. As this table grows larger, queries can consume a lot of cpu, in addition to the extra disk space.
Of course, there are also the actual database logs for your particular RDBMS.
Good Luck!