Most rewrite decisions get made by reading the code. That is the wrong evidence: code tells you what offends you, not what the system actually does in production.
Five questions I ask before anything gets rewritten.
Can you describe the current behaviour precisely enough to replicate it? Not the intended behaviour, the real one: the rounding quirk, the retry that fires twice, the status that only ever shows up for one legacy payment channel. In inherited systems those quirks are load-bearing. If nobody can list them, what you have is not a rewrite, it is a guess with a deadline.
What is the smallest piece you can cut out and run in parallel? Monolith to services work goes well when the first slice is one bounded capability, say a file service, or a notification fan-out, or a parser, with a seam you can route traffic through. It goes badly when the first slice is "the core".
Can both versions run at once on the same data? If not, you have signed up for a cutover weekend instead of a migration. Parallel running is what turns opinion into evidence: same input, two outputs, diff them until the diff is boring.
What is the rollback? Python 2 to 3 migrations taught me this one bluntly. Library by library, deployable at each step, reversible at each step, because the failure rarely arrives in the module you were editing. It arrives in a Celery task that only runs at month end.
Is the pain in the code or in the coupling? Ugly code inside clear boundaries is cheap to live with. Clean code sitting on a shared mutable database with no contracts is what actually blocks you. A rewrite that preserves the coupling just relocates the problem into a newer framework.
My take: the question is rarely "rewrite or not". It is whether the system is observable enough to be replaced incrementally. If it is, you rarely need a big rewrite, since the increments get you there. If it is not, then instrumentation is the first project and not the second.
I wrote up how I sequence this, seams, parallel running, and what to measure before you touch anything, here: https://polycratia.com/c/038bc566
If you have done one of these, I'd like to hear what finally told you the old system was safe to turn off.