A new column in a database table can collapse a release or make it sing. The cost is never zero. Every added field changes read performance, write performance, query plans, and indexing strategies. The wrong default or nullability choice will ripple through APIs and caches.
Adding a new column starts with clarity. Define the data type for the smallest value set that works. Keep null usage explicit. Avoid text where integers or enums fit. Decide if it needs an index now or later, but remember that adding an index after the column has millions of rows can lock writes.
Schema migrations must be atomic in thought and surgical in execution. For heavily trafficked tables, use online schema change tools. Split changes into additive steps: create the new column, backfill in controlled batches, switch application logic when ready, and drop legacy columns only after usage hits zero.