The more differences there are, the more likely there will be bugs

The harder it is to update an environment, the less often it will be done and the more out of sync your environments will become.

The more out of sync your environments are, the higher the chance there will be bugs or issues when changes are moved between environments.

I've had situations where the code I wrote worked for my local database but didn't when moved to staging or production.

I worked at one company where my development database was refreshed nightly, so my site was at most one day out of sync with production.

I knew my code would work with the latest production data and not only the data from days, weeks or months before.

It also meant that I needed to write my changes in an automated and repeatable way so they would be executed on the refreshed database and re-added instead of having to do it manually.

How in sync are your environments and how similar to production is the environment you're testing against?