22May, 2025
We All Have Our Limits, and Send Embedding Is No Exception
My first post about working with new SaaS products! In my new role I'm working with Send to get the team more efficient with their tools. I'll be posting about a feature request I've made due to a shortcoming of its bulk operations, but first, we had an outage with all embedded forms, taking us offline for a few days. The explanation and workaround are simple, but the cause is not public knowledge.
How Send Forms Are Embedded on Your Site
You can get what you need for form embedding by logging into Send, and choosing Growth Tools -> Subscription Forms from the top nav.
In this wizard at the “Set visibility settings” step, you'll be given an element to place on your page like this:
<div data-mooform-id="{form-guid-here}" ></div>

Next, on the Choose publishing method, you can select “Embed your form”, which provides something like this:
< script > if (!window.mootrack) { ! function(t, n, e, o, a) { function d(t) { var n = ~~(Date.now() / 3e5), o = document.createElement(e); o.async = !0, o.src = t + "?ts=" + n; var a = document.getElementsByTagName(e)[0]; a.parentNode.insertBefore(o, a) } t.MooTrackerObject = a, t[a] = t[a] || function() { return t[a].q ? void t[a].q.push(arguments) : void(t[a].q = [arguments]) }, window.attachEvent ? window.attachEvent("onload", d.bind(this, o)) : window.addEventListener("load", d.bind(this, o), !1) }(window, document, "script", "https://cdn.stat-track.com/statics/moosend-tracking.min.js", "mootrack"); } mootrack('loadForm', { form - guid - here }); < /script>


This is all you need to place a Send form on your site, but it's a lot of code.
An Easier Way
The above code is a one-off, but there's a simpler way to get this done and allows for an approach that's easier to maintain.
You can add the script above as part of your site template, switching out
mootrack('loadForm',{form-guid-here});
for
mootrack('init', '{site-guid-here}');
You can get your site guid by going to More -> Websites, where your verified domains exist.
This will have the Send script run every page load and look for elements with the form's ID like this:
<div data-mooform-id="{form-guid-here}" ></div>
An Untold Limitation
So, as you can see the “easier way” is easier. Our problem is we published over the undocumented limitation with this method, which is 50 forms. Doing so caused all our forms to throw the following exception:
Failed to load resource: the server responded with a status of 502 (Bad Gateway)" error.
There was no answer to this. I played with the code for a while then went back to Send and grabbed the page-by-page approach, which did work. A clue. After bringing this to Send support they came back with:
“To help maintain optimal performance, we have set a limit of 50 active (published) forms per website.”
This is not documented, so keep in mind that the limit should be observed until the bug of throwing exceptions is corrected.