There is a pretty explanatory article on the SSH-SFTP blog that details the differences between SFTP and FTPS, and gives an overview of the scenarios each one of them is more suited for.
According to the above mentioned article, each protocol has "pros" and "cons", so depending on each specific scenario, one protocol may be more effective that the other one.
Here below I will recap the points that - in my humble opinion - are the most important:
SFTP is always secure, FTPS may be not: SFTP is a subsystem of the SSH protocol, and therefore it always runs in an encrypted/secured channel; FTPS instead may feature a plain (unencrypted) FTP fallback strategy, in case the server does not support SSL/TLS.
FTPS can be faster than SFTP: in the exact same network conditions, FTPS could be probably faster than SFTP, as it runs the control channel and the data channel seperately (while SFTP runs in a single channel and interleaves the control packets within the data flow)
SFTP is firewall-friendly, while FTP(S) is not: SFTP runs inside SSH thus it uses only one port on the server (default: 22); FTP(S) instead requires either the possibility for the server to connect back to the client (active) or a wide number of open ports on your firewall for the server to accept incoming data connections (passive).
FTPS can delegate trust, SFTP can not: FTP(S) leverages the SSL/TLS intrinsic security based upon X.509 certificates that can be issued by a Certification Authority trusted by both parties, while SSH Server Keys can only be issues by the server part and must be trusted by the client part.