I don't go as far as a spreadsheet, but I do pretty much the same thing on a calendar, Date ordered or "bid accepted", when it arrived, condition, and other pertinent notes. Also an inventory list that is updated as needed.
As to impulse? Yeah sometimes and to be honest , those are the ones I regret in most cases.