What does it have to survive?
Expected load, transaction volume and growth. A product that handles money or scales to hundreds of thousands of users has genuinely different constraints from an internal tool, and pretending otherwise is where most rebuild costs originate.