Communications with Transaction Data

Our organization has been using Tessitura for 10 years, and we have started to perform a CRM audit this year to increase efficiency of our data flow, review current processes and retrain staff. One of the things we want to revisit is the structure of where transactional data lives (Household), and where we store email addresses and web logins (Individual). We chose to put emails on the individual level, so we can manage communication preferences on an individual level. We often run into situations where we need to extract transactional information, and email addresses for a project. For example, this year we needed to extract On Account (Event Credit) amounts (Household) and email addresses (Individual) to send a communication for season launch. How have others managed these communication projects without having to do a lot of manual data clean up? What are the pros and cons of putting email addresses on the Household level?