A new column changes the shape of your data. It alters indexes, impacts query plans, and can cascade through your application logic. Adding it in the wrong way locks rows, stalls writes, or crashes migrations in production. Adding it the right way makes the change invisible to users.
Before creating a new column, decide on type and constraints. Use the smallest type that holds the required range. Avoid NULL defaults unless they make sense; default values can affect storage and query performance. If the column will be indexed later, know that indexes created on large tables can be expensive. Sometimes it’s better to add the column first, backfill in batches, and then add the index.
Test migrations on a copy of production data. Measure how long ALTER TABLE ... ADD COLUMN takes in your environment. Check if your database supports non-blocking schema changes. In MySQL, online DDL can help. In PostgreSQL, adding a nullable column with no default is fast, but adding a default rewrites the table.