No, *sandy@gmail* isn’t an “incomplete” e-mail address!

The Marketo Forms 2.0 Email type — just like an HTML5 <input type=email> — won't throw an error on "sandy@gmail" (with no ".com"). But that's not a bug.

A CSS stylesheet switcher for Guided LPs

Sorta surprised no one else has come up with this yet (that I know of). Here's a quick way to let your users switch between 2 stylesheets: <

Marketo field limits in the real world, Part III: *Numeric strings* are not numbers

Spinning this off the earlier Part I [https://blog.teknkl.com/real-world-marketo-field-limits-1-integers] (on number types) because it's an equally important topic. Not necessarily a rivetingly interesting topic, but

Shuffling and rotating output in Velocity

I wrote earlier about using Velocity's $math.random() for basic A/B testing [https://blog.teknkl.com/lightweight-a-b-testing-in-velocity/]. Here are some other things you can do in the

Form Pre-Fill. External sites. No limits. You're welcome.

And any form, not just Marketo embeds. Finally, my long-mysterious method is open source!

More things to unlearn from the Marketo Script Editor

There's another area where Marketo's starter Velocity code is a bad look.

Code Anatomy: Convert a dotted IP address to decimal

I've been modifying forms based on inferred country — GDPR/CASL-related — and that means checking if an IP address is in a known range. First, I'll show that what you think of as an "IP address" is probably not-quite-right, then how JS Array methods can help out with a necessary conversion.

Safely embedding JSON data in a Rich Text (as opposed to Text) {{my.token}}

You can store JSON blocks as Text {{my.tokens}}, then embed the tokens in LPs for advanced dynamic content. Making JSON maintainable in the Marketo UI takes a little trick.