Stop saying "spam" (which means different things to different people) and start saying UBE - unsolicited, bulk, email.
If it's unsolicited, but not bulk, it's okay. If it's solicited (where solicited means "opt in, with a confirmation of that opt in") it's okay. As soon as it's bulk and unsolicited it's spam. And that doesn't change if you hand craft the emails or use a template.
Well, yes, I see that's confusing. "As soon as it's bulk and unsolicited it meets the minimum definition for what most people would call spam", perhaps, or "as soon as it's bulk and unsolicited your hosting provider is going to think it's spam".
If it's unsolicited, but not bulk, it's okay. If it's solicited (where solicited means "opt in, with a confirmation of that opt in") it's okay. As soon as it's bulk and unsolicited it's spam. And that doesn't change if you hand craft the emails or use a template.