I think people here are underestimating how difficult it is to implement is_deleted in a production system. Literally EVERY query has to be rewritten to reflect the new database schema. If it's not been implemented from the start then you have a considerable re-write, and usually this type of project will not be revenue generating.
Not necessarily. In some ORMs you can have scopes that can be used to append common sub-queries or conditions, such as "WHERE is_deleted=0", and some allow you to specify default scopes that should be appended to every database query (unless explicitly switched off).
I'm just saying: It doesn't need to be a considerable rewrite, it really depends on how your ORM or data layer is implemented.