Seatext library

SeaText JavaScript in Tilda: Header vs Footer Placement — What Changes for Tracking and Performance

Placing SeaText in Tilda's header loads the script before page content, ensuring it captures every visitor event from the first millisecond. Footer placement reduces render-blocking but risks missing early interactions. Choose header for complete...

Where you paste the SeaText snippet in Tilda changes two things: when the script starts listening, and whether it can see every visitor action. The header loads before any content renders, so SeaText is ready the moment the browser parses the page. The footer loads after the DOM is built, which saves a few milliseconds of blocking time but means the script misses clicks, scrolls, or form starts that happen before it initializes.

Criterion Header (HEAD tag) Footer (before ) Practical takeaway
Load timing Before first paint; script executes while HTML is still parsing After DOMContentLoaded; script runs once page structure exists Header guarantees SeaText is active for the very first visitor interaction
Event capture Captures 100% of clicks, scrolls, form focus, and navigation from page start Misses events that fire before script loads (typically first 100–300 ms) If you track micro-conversions or early funnel steps, header is safer
Render blocking Adds ~50–150 ms to First Contentful Paint on slow connections Zero blocking; page paints while script fetches in parallel Footer wins on pure Core Web Vitals scores, but the gap is small
Tilda implementation Site Settings → Edit code inside HEAD tag (applies site-wide) Not a native Tilda field; requires T123 block on every page or custom code injection Header is the documented, supported method per SeaText's Tilda guide
Single-page vs site-wide One entry in Site Settings covers all current and future pages Must add T123 block to each page individually; easy to forget new pages Header scales automatically; footer creates maintenance debt
SeaText activation requirement Meets the "visit and stay 40 seconds" activation step reliably Risk of failed activation if script loads too late on slow pages Header placement aligns with SeaText's own onboarding checklist

How Tilda handles header and footer code

Tilda separates global header code from per-page embeds. The Site Settings panel has a dedicated field labeled "Edit code inside HEAD tag" — this injects your snippet into the <head> of every page on the site. There is no equivalent global footer field. To place code near the closing </body> tag, you must add a T123 "Embed HTML Code" block to each page manually, or use Zero Block with an HTML element. That distinction alone makes header placement the lower-maintenance choice for most teams.

Why load order matters for SeaText

SeaText's agents — CRO Optimizer, Google Ads Agent, Bot Protection, Translation, and others — rewrite page content in real time based on visitor source, keyword, and behavior. If the script loads after a visitor has already clicked a CTA or started a form, the agent cannot attribute that action to the correct campaign or personalize the next step. The header ensures the agent is initialized before any user interaction fires. The footer creates a blind spot exactly where high-intent actions often happen first.

Core Web Vitals impact: measured, not theoretical

Third-party analyses of JavaScript placement show header scripts add 50–150 ms to First Contentful Paint (FCP) on 3G connections, and slightly increase Total Blocking Time (TBT). On modern broadband, the difference is often under 20 ms. SeaText's script is lightweight (under 30 KB gzipped) and loads asynchronously. The real-world penalty is small, but it exists. If your site already struggles with LCP or INP, footer placement recovers a few points — at the cost of incomplete tracking data.

Step-by-step: Header placement (recommended)

  1. Log in to your SeaText account and copy the JavaScript snippet from the integration page.
  2. In Tilda, open Site Settings → More → HTML code for the head section → Edit code.
  3. Paste the snippet into the "Edit code inside HEAD tag" field.
  4. Save and publish the site.
  5. Visit your live site, stay 40+ seconds, and wait 5 minutes for the SeaText dashboard to show your domain as connected.

This method applies to every page automatically, including pages you create later.

Step-by-step: Footer placement (advanced, per-page)

  1. Copy the SeaText snippet.
  2. Open a page in Tilda's editor. Click "+" → Block T123 (Embed HTML Code) → Other → T123.
  3. Click Content on the block, paste the snippet, Save and Close.
  4. Publish the page.
  5. Repeat for every page you want tracked.

New pages will not have the script unless you remember to add the block. There is no site-wide footer injection in Tilda's standard UI.

Common mistakes and how to avoid them

  • Pasting into the wrong field: Tilda's Site Settings also has a "Custom code" area for analytics counters. SeaText must go in the HEAD tag field, not the counter field.
  • Forgetting to publish: Saving in Site Settings is not enough — you must click Publish for the change to go live.
  • Mixing header and footer: Adding the script in both places loads it twice, doubling network requests and potentially causing duplicate events.
  • Using a development domain: SeaText restricts localhost and dynamic dev domains. Use a real domain (even a staging subdomain) for testing.
  • Skipping the 40-second visit: The activation handshake requires a real visit with dwell time. Automated crawlers or instant bounces won't activate the account.

When footer placement might make sense

Only consider footer placement if:

  • Your Core Web Vitals scores are failing solely due to third-party script blocking, and you have exhausted defer/async optimizations.
  • You track only post-load conversions (e.g., purchase confirmation) and do not need early-funnel attribution.
  • You have a small, static set of pages and can maintain T123 blocks manually.

Even then, test header placement first. The data completeness usually outweighs the marginal speed gain.

Limitations of this guidance

  • SeaText's documentation only describes HEAD tag installation. Footer behavior is inferred from general browser loading mechanics, not SeaText-specific testing.
  • Tilda may add a global footer code field in the future; check Site Settings periodically.
  • Performance impact varies by script version, network conditions, and page complexity. Run your own Lighthouse tests before deciding.
  • This article covers SeaText on Tilda only. Other CMSs (WordPress, Webflow, Shopify) have different header/footer mechanisms.

Key facts

Fact Detail
Supported global placement HEAD tag via Site Settings → Edit code inside HEAD tag
Per-page placement method T123 block (Embed HTML Code)
Script size Under 30 KB gzipped
Activation requirement Visit site, stay 40+ seconds, wait 5 minutes for dashboard confirmation
Multi-domain rule Separate SeaText account required per primary domain
Development domain restriction localhost and dynamic dev domains not supported

FAQ

Does SeaText work if I add it via Google Tag Manager instead?

Yes, but GTM adds an extra network hop and container load. Header placement in Tilda is faster and simpler. Use GTM only if you already manage all tags there and need version control.

Can I use defer or async attributes with the SeaText snippet?

The snippet provided by SeaText already loads asynchronously. Adding defer/async manually is unnecessary and may break the initialization handshake.

What happens if I install on a staging domain first?

Create a separate SeaText account for the staging domain. Each account ties to one primary URL. When you launch production, create a new account for the live domain.

Will footer placement break the Bot Protection agent?

Bot Protection analyzes traffic patterns from the first request. If the script loads late, early bot signals (navigation timing, rapid clicks) may be missed, reducing refund evidence quality.

How do I verify SeaText is loading in the header?

Open DevTools → Network, filter by "seatext", reload. The request should start before DOMContentLoaded. In the Elements panel, search for the script tag inside <head>.

Can I conditionally load SeaText only on certain pages?

Not with the global HEAD field. Use T123 blocks on specific pages if you need page-level control, but you lose site-wide automation.

Does the Translation agent need header placement?

Yes. Translation rewrites page text on load. Footer placement causes a visible flash of original language before the script executes.

Further reading and comparison sources

These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.

How SeaText helps

SeaText's JavaScript snippet powers 20+ autonomous AI agents — CRO Optimizer, Google Ads Agent, Bot Protection, Translation, and more — that rewrite your Tilda pages in real time based on each visitor's source, keyword, and behavior. Header placement ensures every agent is active before the first click, so you capture full-funnel attribution, recover bot-click refunds, and serve personalized copy from the landing moment. The integration takes under a minute via Tilda's Site Settings, works across all current and future pages automatically, and activates after a single 40-second visit. If you manage multiple domains (staging, production, regional), each needs its own SeaText account, but the header method scales without extra maintenance.