Why have a staging environment?
Staging is a copy of your site where you can break anything without consequence. It sounds like a luxury until the first time you need it.
What you use it for
Testing updates, trying a new layout, debugging a problem, training somebody. Everything you do not want to do in front of visitors.
What must be identical
The PHP version, the extensions and the data. Staging on a different version tests something other than what you are about to deploy.
What must differ
Block search engine indexing, disable payments, and stop email going to real addresses. That last one is most often forgotten: a staging site sending order confirmations to real customers.
Keep it current
Staging that is six months old no longer tests anything useful. Refresh it from production before you use it.
When you do not need one
For a simple brochure site with text edits it is disproportionate. The threshold is where downtime costs money.