Is it mandatory to use injectable on every service class?

No. The @Injectable() decorator is not strictly required if the class has other Angular decorators on it or does not have any dependencies. But the important thing here is any class that is going to be injected with Angular is decorated, i.e., If we add the decorator, the metadata design:paramtypes is added, and the dependency injection can do it’s job. That is the exact reason to add the @Injectable() decorator on a service if this service has some dependencies itself.