My only complaint is it’s a bit verbose. I’d rather have it as an option inside the .service file. The .timer requires some boilerplate like [Unit].description (it… uh… triggers a service. that’s the description), and WantedBy=timers.target.
This can be solved through abstraction and automation.
In NixOS for example, you can declare a service that runs an arbitrary script every day like this:
This automatically creates a service file with the script in its ExecStart and an accompanying timer which runs daily and is part of the timers.target.