Nah. Done correctly, audit triggers are fast and a breeze to write. It also depends a bit on whether you're doing "whole row" auditing or "column level" auditing, the later being the more complicated of the two.
The key to such audits is to never audit INSERTs, which would automatically double the size of the data... one row for the trigger table and one row for the audit table.
In an audit system, only the "old" data should be in the audit table and whatever the "new" data is will be in the trigger table (the table with the trigger on it). If a row is inserted and never updated, that row won't show up in the audit table. The trigger table becomes a part of the "audit".
--Jeff Moden
Change is inevitable... Change for the better is not.