Partners · Free widget
Embed the free RESPA self-check on any page.
Two lines of HTML. Auto-resizes. No tracking pixels. Free for any site that helps US homeowners. Every visitor who passes the check and signs up earns you credit via the ref param.
1. Drop in the snippet
Paste anywhere on your page. The widget renders inline at full width; height adjusts itself as the form is filled.
<!-- EscrowAudit free RESPA self-check -->
<div data-escrowaudit-self-check
data-ref="your-partner-slug"
data-utm-source="your-partner-slug"
data-utm-medium="embed"
data-cta="https://escrowaudit.us/sign-up"></div>
<script async src="https://escrowaudit.us/embed/self-check.js"></script>2. Supported attributes
| Attribute | Purpose |
|---|---|
data-ref | Your partner slug. Forwarded to the audit signup URL and stored on the resulting Stripe customer. |
data-utm-source / data-utm-medium / data-utm-campaign / data-utm-content / data-utm-term | Standard UTM parameters forwarded onto the CTA URL so you can attribute conversions in your own analytics. |
data-cta | Override the destination URL the CTA button sends users to. Must be an escrowaudit.us URL; any other host is replaced with /sign-up. |
3. postMessage events (optional)
The widget emits the following events on the parent window.postMessage channel. Listen for them if you want to push results into your own analytics or trigger a follow- up CTA on the host page.
escrowaudit:ready— widget mounted and ready for input.escrowaudit:resize—{ height: number }. Already handled by the loader; listen only if you have custom layout logic.escrowaudit:result—{ severity, potentialRefund, respaMaxCushion }once the user submits the form.escrowaudit:cta—{ url: string }when the user clicks the audit CTA (also already handled by the loader, which navigates the top window).
// Listen for widget events on the partner page
window.addEventListener("message", function (event) {
if (event.origin !== "https://escrowaudit.us") return;
if (!event.data || event.data.source !== "escrowaudit") return;
if (event.data.type === "escrowaudit:result") {
// event.data.severity -> "LOW" | "MEDIUM" | "HIGH"
// event.data.potentialRefund -> formatted USD string
// event.data.respaMaxCushion -> formatted USD string
yourAnalytics.track("escrowaudit_widget_result", event.data);
}
});4. Live preview
Rendered below using the same loader your visitors would. No data leaves this page until the user submits.
5. Brand + legal
- The widget uses the EscrowAudit brand mark and may not be modified, rebranded, or proxied through a different domain.
- You may not place the widget on sites that promote loan fraud, deed-theft schemes, foreclosure rescue scams, or any activity prohibited by 12 C.F.R. § 1024.
- For high-volume placements (over 50,000 monthly impressions), email hello@escrowaudit.us so we can size cache + monitoring.