I want to know why Wordpress designed their database with two tables separating users and meta from each other. Wouldn't it be better if first_name, last_name, nickname, description, and capabilities are in the wp_users table?

SO what's the advantage for doing this separation?

1 Answer 1


The meta table is build to allow custom user meta. If anything would be in just one table a plugin developer had to add a new column to the table for each meta data or the data had to be stored as serialized arrays/objects which would made them unsearchable.

Short: Performance and flexibility.

  • thanks very much. will it make my queries faster when the two tables are separated?
    – Raymond
    Jun 7, 2012 at 8:36
  • Performance doesn’t depend so much on the number of tables. Indexes and optimized queries are much more important.
    – fuxia
    Jun 7, 2012 at 8:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.