It's only recommended that you store json and text on relays. It's a text protocol, not a protocol for storing large binary data. Note sizes are restricted as well on most relays.
If I can store multiple messages on a relay I can distribute arbitrary files. So being text-only doesn't really limit anything.