Does anyone know if Marketo has any limitations for velocity scripting?
My use case:
We have a email that we want to scale out to more people that is a very data driven email. It uses ~30 fields to create the dynamic email. The problem that we have as we scale is, it takes a lot of Marketo processing power to clean up our data after we send the email so we want to create a velocity script that maps fields in a JSON array into the email so all the data is in one field versus 30 fields.
Do you know if Marketo can process 3M emails this way?
I wouldn't be worried about your approach: using a JSON array (actually needs to be a JSON-ish array, see my other posts for details) and parsing it using Velocity is a great way to avoid populating tons of single-use fields. See my other thoughts in this comment.
Adding to Sanford's response -- Marketo has a total velocity script size limit of 100,000 bytes in any single email asset, but from your description I don't think you'd hit that unless you have a bunch of other velocity scripts also in the email asset.
Perhaps consider sending your email in an Email Program and enable the headstart feature to alleviate some of the processing time concerns.
Doesn't head start just pre-process the email 12 hours ahead of time? It pushes the processing time not spreads it. Of course, if it's running at night, then it reduces impact. You'd get the email to largely send at the same time instead of taking 3 hours.