As T3RM1NVT0R suggested, better to create a script and run it from crontab. Anyway, the problem is the % sign in the date format, that has a special meaning in crontab. From man 5 crontab
Percent-signs (%) in the command, unless escaped with backslash (\), will
be changed into newline characters, and all data after the first % will
be sent to the command as standard input.
Escaping it should do the trick.