Message malformed: offset 0:{{ states('input_number.preheat_mins')|int }}:0 should be format 'HH:MM', 'HH:MM:SS' or 'HH:MM:SS.F' for dictionary value @ data['offset']
Apparently offset does not get template-evaluated? Is there any chance to make the offset depend on some variable or state?
Most triggers have no ability or very limited ability to use templating. The few places that you can use templates in triggers are detailed in the Automation Triggers doc (and they usually include an example specifically including a template).
AFAIK, there is currently no way to do what you are trying to do in your example.
A delay action might work for me. In an other automation I want to switch off HVAC after a calendar event finished, but with a (input_number) configurable delay.