There is nothing wrong with cache, as Crell said. I have done both techniques. However, one caveat with cache - it is not as persistent as one would like to think. There are many events that cause it to be cleared. Using a minimum lifetime also interferes with some very popular (i.e. core) modules. I have to agree with Crell's conclusion, go with a discreet table if your data needs to be consistently persistent. So let me add a bit to the question because I just came across it in a contrib. Let's say you need one field that exactly matches a core table. Is it ever okay, upgrades aside, to add that column to the core table? Some things I've read about D7 seem to indicate this will be okay in D7. The use of "drupal_write_record" really makes this a convenient practice. Nancy E. Wichmann, PMP Injustice anywhere is a threat to justice everywhere. - Martin L. King, Jr. No virus found in this outgoing message. Checked by AVG - http://www.avg.com Version: 8.0.176 / Virus Database: 270.11.15/2003 - Release Date: 3/15/2009 2:07 PM