Adding a new column should be simple. In practice, it often risks downtime, bloated migrations, or inconsistent data. Schema changes hit production without warning. Queries fail. Latency spikes. Customers notice.
A new column changes the shape of your data. Databases must rewrite metadata, sometimes scan and backfill rows, and update indexes. On small tables, this is trivial. On large ones, it can block reads and writes or trigger costly locks.
The safest path is to plan the addition. First, decide the column type and constraints. Avoid adding expensive defaults that rewrite every row. Instead, add the column as nullable, then backfill in batches. Finally, enforce constraints once the data matches the rules.