Which SeaText AI Features Run Server‑Side vs Client‑Side: A Decision Matrix
SeaText AI uses a lightweight client‑side JavaScript snippet for real‑time DOM rewrites, personalization, and A/B variant delivery, while all content generation, translation, bot‑detection logic, and variant‑selection algorithms run on SeaText’s servers. The snippet hydrates...
Quick answer: the split in one sentence
Anything that decides what to show — keyword‑matched copy, translated text, personalization rules, A/B winner selection, bot‑evidence collection — is computed server‑side.[S1]
The browser‑side snippet only receives the final HTML fragments and injects them into the page.[S1]
Architecture overview
SeaText installs via a single async script tag placed in your index.html or SPA entry point.[S1]
The script loads asynchronously, stores a visitor ID in localStorage, and then opens a WebSocket / fetch channel to the SeaText edge network.[S1]
All AI models, translation engines, and testing statistics live in that edge network; the browser never sees model weights or raw training data.[S1]
When a page loads, the snippet reads URL, UTM, referrer, viewport and anonymous ID, then sends this minimal context to the edge.[S1]
The edge returns only the HTML fragments that need to change, which the snippet injects into the DOM after the initial paint.[S1]
Feature‑by‑feature execution layer
| Feature / Agent | Primary execution layer | What the client snippet does | Why it matters |
|---|---|---|---|
| Google Ads Landing Page Agent (keyword‑aware rewrites) | Server‑side | Receives pre‑rendered headline, offer, CTA, product blocks; swaps DOM nodes | Keeps page‑speed scores high; no AI latency in browser[S3] |
| Bot Protection / Refund Agent | Server‑side (detection + evidence packaging) | Sends behavioural signals (mouse, scroll, timing) to edge; receives block/allow flag | Evidence is cryptographically signed on the server, ad platforms accept it[S2] |
| Translation Agent (125 languages) | Server‑side | Injects translated HTML fragments; handles RTL / font loading | No need to ship translation models or dictionaries to the client[S4] |
| Visitor Source Agent (UTM / referrer matching) | Server‑side rule evaluation | Reads document.referrer and URL params, sends to edge, applies returned variant | Rules can change instantly without redeploying the site[S4] |
| AI Personalization Agent (account / industry / stage) | Server‑side | Receives personalized copy blocks; swaps them in place | PII never leaves the edge; browser only sees final text[S5] |
| AI A/B Testing Agent (variant generation + winner scaling) | Server‑side (variant creation, statistical engine) | Assigns visitor to bucket, renders assigned variant | Statistical significance calculated centrally; no client‑side math[S6] |
| Ecommerce Product Copy Agent | Server‑side | Replaces product titles, descriptions, CTAs | Catalog‑scale rewrites stay off the main thread[S4] |
| Free Website Chat Agent | Hybrid — UI client, LLM server | Renders chat widget, streams tokens from edge | Streaming keeps perceived latency low[S5] |
| Scroll Slowdown Agent | Client‑side only | Listens to scroll velocity, adds friction near CTAs | Pure DOM / CSS manipulation, zero server round‑trip[S7] |
| ChatGPT Brand Visibility Agent | Server‑side (structured data generation) | Injects application/ld+json blocks into head | AI crawlers read the structured data; no browser JS required[S7] |
Decision rule: when you must know the layer
- CSP / strict nonce policies — only the snippet URL and the edge API endpoint need allow‑listing; no inline scripts.[S1]
- Server‑side rendering (Next.js, Nuxt, Astro) — the snippet still runs in the browser; if you need the personalized HTML before first paint, call the SeaText edge API from your server at build / request time (documented in the Large Website Implementation Guide).[S1]
- Privacy regulations (GDPR, CCPA) — personalization logic stays on the edge; the browser only receives the final copy. No profiling cookies are set by SeaText; the
localStorageID is anonymous.[S2] - Performance budgets — the snippet is ~12 KB gzipped, async, and does not block LCP. All heavy lifting is off‑main‑thread.[S1]
- Real‑time interaction needs — features that require immediate DOM feedback, such as scroll‑based friction, run client‑side to avoid round‑trip delay.[S7]
- Offline or low‑connectivity scenarios — the snippet degrades gracefully, showing the base page when the edge cannot be reached.[S6]
Key facts from SeaText documentation
| Fact | Detail | Source |
|---|---|---|
| Integration method | Single async script tag in index.html or SPA entry file | S1 |
| Script loading | Async attribute ensures non‑blocking load | S1 |
| Local storage | Stores anonymous visitor ID; requires localStorage permission | S1 |
| Cross‑origin | Compatible with multi‑domain SPAs if CORS headers allow | S1 |
| Activation | Dashboard toggle per page / keyword set; no code changes after snippet install | S3 |
| Agent count | 20+ autonomous agents (Ads, Bot, Translation, Personalization, A/B, Chat, SEO, etc.) | S6 |
| Average conversion lift | Clients see an average +35% Google Ads conversion lift | S6 |
| Bot‑evidence refund potential | Recover up to 20% of Google and Meta ad spend lost to fraudulent clicks | S2 |
| Language coverage | Translation agent supports up to 125 languages | S4 |
| Chat agent availability | Free website chat agent is 100% free AI chat that converts visitors | S5 |
Limitations & edge cases
- First‑paint personalization — because the snippet runs after hydration, the very first paint shows the original HTML. For zero‑layout‑shift personalization, use the server‑side API (see Large Website Implementation Guide).[S1]
- Offline / air‑gapped environments — all AI features require connectivity to the SeaText edge; the snippet degrades gracefully (shows base page).[S6]
- Custom model fine‑tuning — not exposed via the snippet; enterprise customers work with SeaText engineers to train private models on the server side.[S7]
- Client‑side only features — currently only Scroll Slowdown Agent runs entirely in the browser. Everything else has a server component.[S7]
- Data size limits — the snippet sends only minimal context (URL, UTM, referrer, viewport, anonymous ID); large payloads are not transmitted to the edge.[S1]
- Script blocking by ad‑blockers — some ad‑blocking extensions may filter the SeaText snippet domain; whitelisting the domain restores functionality.[S2]
Terminology cheat sheet
- Edge network
- SeaText’s globally distributed compute layer where AI models, translation, and testing logic execute.[S1]
- Snippet
- The ~12 KB JavaScript file loaded via
<script async src="…">that handles DOM injection, event capture, and edge communication.[S1] - Variant
- A specific version of a page element (headline, CTA, product block) generated by the AI and served to a bucket of visitors.[S6]
- Hydration
- The moment the snippet initializes, reads the visitor ID, and requests the appropriate variants from the edge.[S1]
FAQ
Can I run the translation model on my own servers?
No. Translation runs exclusively on SeaText’s edge infrastructure; the snippet only receives the translated HTML.[S4]
Does the snippet send full page HTML to SeaText?
No. It sends minimal context (URL, UTM, referrer, viewport, anonymous ID). The edge returns only the fragments that need to change.[S1]
What happens if the edge API is slow or down?
The snippet times out after a configurable threshold (default 800 ms) and leaves the original page intact. No layout shift, no error to the user.[S6]
Can I use SeaText with a strict Content‑Security‑Policy?
Yes. Allow‑list the snippet origin and the edge API endpoint (both HTTPS). No unsafe-inline or unsafe-eval required.[S1]
Is visitor‑level personalization data ever stored in the browser?
Only the anonymous localStorage ID. All profile data (company, industry, buying stage) stays on the edge.[S5]
How do I test a variant locally before it goes live?
Use the Variants Editor in the dashboard to preview any variant on a staging URL; the snippet respects a ?seatext_preview=variantId query parameter.[S6]
What’s the performance impact on Core Web Vitals?
Independent audits show no measurable impact on LCP, CLS, or INP because the script is async, tiny, and DOM mutations happen after paint.[S1]
Do I need to modify my CMS to activate agents?
No. After the snippet is installed, activation is a simple switch in the dashboard; you can choose the page, keyword set, or campaign.[S3]
Can I combine SeaText with other translation tools?
Yes. The snippet only overwrites the elements it receives from the edge; you can run other translation scripts on different parts of the page if needed.[S4]
Further reading and comparison sources
These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.
Learn more
Visit the website for more information.