start-limit-hit is not the reason your application failed. It means systemd observed too many start attempts inside the unit's configured interval and refused another activation. The real cause happened earlier: a bad path, missing credential, permission error, occupied port, failed dependency, process crash, timeout, or another condition ...