v0.1 · public beta — join the first cohort

Ship UI without shipping code.

Fragments is a no-code runtime for banners, modals, experiments and product surfaces. Marketers build, the SDK delivers, analytics closes the loop — no sprint required.

CUSTOMER WEBSITE · example.com
Home › Pricing
Simple pricing, built for teams
Start free. Scale as you grow. No credit card required for the first workspace.
Starter
$0
Team
$49
Business
$149
FOR YOU · RU
–20% on annual
Auto-applied if you upgrade today.
SDK EVENTS · REAL-TIME
00:00.024sdk.init()
00:00.041fetch /api/slots
00:00.089resolve user.ctx
00:00.094·geo=RU · device=desk
00:00.102match widget #promo-ru
00:00.118render tree (4 nodes)
00:00.151painted · 38ms total
00:00.152track impression
resolving…
versionfragments/0.1.0-beta
sdk size12.4 kb gzipped
p50 render38ms
statusall systems
§ 01 — why fragments existsproblem.md

Your marketing team doesn't need a sprint to change a banner.

Every UI experiment that goes through a backlog is one that won't happen. Fragments moves the surface layer out of code and into the hands of the people who need it.

▲ Before — life with tickets

  • Every banner, modal or CTA is a ticket. Every ticket is a sprint. Every sprint has six other tickets.
  • Marketing waits three weeks for a colour change. Nobody is happy about this, including the engineers.
  • Experiments require a deploy, so you run one a month instead of one a day.
  • Analytics live in five tools. Nobody knows which variant won, only which one shipped.

▲ After — one SDK, done

  • A visual builder your PM can use. Drag, type, publish — banner live in fifteen minutes.
  • Targeting by geo, device, plan, cohort, time. Rolls out from the edge, not a release.
  • A/B tests, feature flags and scheduled rollouts live inside the same tool you built the widget in.
  • Impressions, clicks and conversions attached to every fragment, out of the box.
§ 02 — how it works3 steps · ~15 minutes

Build, ship, analyse. In that order, on the same surface.

01 / 03~12 min
Build
Drag components onto a canvas. Import from Figma. Wire up data sources and conditional logic without touching the codebase.
canvas▢ banner · 420pxdatauser.plan, user.geologicif plan = free → promo_astate● ready to ship
02 / 03~2 min
Ship
Pick audience. Pick schedule. Pick split. Publish to the edge — live on your site in under a second, globally.
geoRU, KZ, BYdevicedesktop + tabletsplit50 / 50 A/Bcdn● propagated · 380ms
03 / 03live
Analyse
Impressions, clicks, conversions — attached to every fragment, streamed to your dashboard, exportable to Metrica, GA4, Amplitude.
impr12,481ctr17.0%conv4.2%winnervariant B · p=0.02
§ 03 — the platform3 modules · 1 sdk

Three things, one runtime.

A builder that speaks to designers, ships to engineers.

Drag-and-drop canvas, component library, Figma import, data binding, conditional logic, versioning and rollback. Exports production-grade DOM — not an iframe, not a wrapper.

  • canvaspixel-perfect WYSIWYG, snapping, constraints
  • library120+ primitives · banners, modals, bars, forms
  • figmabi-directional sync · import and push changes
  • databind to any JSON source or your own API
  • logicconditional rendering · if / else / switch
  • historyfull version history · blame · rollback
CANVAS · welcome-modal.frg
Welcome to Acme
A short tour, 60 seconds or less.
Start
Skip
412 × 180autosaved · 2s ago
§ 03.5 — the bits we're proud of2 signature features

Two things that make us, us.

The rest of the platform is table stakes. These two are why teams stay after the pilot.

figma-plugin

Figma → production, one button

Our Figma plugin turns any frame into a live Fragments area. Component names become props, auto-layout becomes CSS, variants become states. No hand-off doc, no developer translation.

  • exportsframes · components · variants · auto-layout
  • bindingstext, colour, sizing — driven by props
  • round-trippush edits from Figma, pull tweaks back in
FIGMA · promo-card
Claim it
Button / Primary
auto-layout · h=40 · pad 14·20
FRAGMENT · live
Claim it →
✓ synced · 2s ago
anomaly-detector

AnomalyDetector — always on, quietly

A model watches every live fragment and experiment. When CTR, conversion or latency drifts off-pattern, it pages you. It knows what to ignore — weekends, holiday bumps, planned traffic shifts — so the alerts mean something.

  • watchesctr · conv · dwell · error rate · p99 latency
  • contextseasonality · campaign · known releases
  • alertsslack · email · pagerduty · webhook
CTR · promo-summer · last 24h
▲ anomaly · 18:04
CTR dropped 42% — outside expected band
✓ not explained by weekend · ✓ not a known deploy
→ posted to #growth-alerts
§ 04 — for your engineersintegration · ~1 hour

One script tag. Then engineers get out of the way.

Drop the SDK once, mark your slots with data-fragment, ship. Everything after that happens in the dashboard.

index.html · one-time setupHTML
1
2
3
4
5
6
7
8
9
10
<!DOCTYPE html>
<html>
<head>
  <script
    src="https://cdn.fragments-studio.io/sdk.js"
    data-key="frg_4kJ29_live"
    async defer>
  </script>
</head>
</html>
app.tsx · render an areaTypeScript
1
2
3
4
5
6
7
8
9
10
import { Area } from '@fragments/react';

// drop an area anywhere — overrides + options
<Area
  areaCode="4ce18c45cd999"
  props={{
    key: 'Override value',
  }}
  options={{ ssr: false }}
/>
12.4 kb
gzipped, zero deps
<50ms
p99 edge latency
ssr · csr
both supported natively
csp safe
nonces + strict-dynamic
§ 05 — the numberstargets from early pilot benchmarks
from idea to live
15min
Average time from opening the builder to first impression on production.
experiment throughput
10×
More tests per month vs. pre-Fragments baseline across pilot teams.
code written by marketing
0
Lines. Forever. This is not a metaphor — the builder produces production DOM.
engineering integration
1h
One afternoon. One script tag. One identify call. One happy platform team.
§ 06 — use cases6 of many

Anywhere a <div> goes, a fragment goes.

01

Promo banners and announcements

Launch offers, holiday messaging, compliance notices, maintenance bars. Scheduled to the minute, killable with one click.

bannermodalannouncement-bar
02

A/B and multivariate tests

Test copy, colour, layout, placement. System allocates traffic, tracks lift, stops on significance. Export the winner to your repo if you want.

a/bmultivariateauto-stop
03

Geo and compliance targeting

Show different content in RU, KZ, EU. Solve GDPR banners. Swap pricing by currency. All from the same dashboard.

geogdpri18n
04

In-product onboarding and nudges

Empty-state prompts, upgrade nudges, feature announcements, NPS surveys. Trigger on user traits, scroll, inactivity, anything.

onboardingnpsupsell
05

Fast widget production

Figma → builder → prod, with data binding. Ideal for landing pages, event sites, campaign microsites that need to ship this week.

figma-importlandingcampaign
06

Feature flags without the ceremony

Percentage rollouts, kill switches, cohort targeting. Same tool. Same audit log. No second vendor.

flagskill-switchcohorts
§ 07 — pricingflat · per workspace

Flat pricing. No seat maths, no surprises.

Pilot · free
$0 / 14 days
Full platform, no credit card, cancel by doing nothing.
  • 10,000 impressions / day
  • 3 live fragments
  • All modules, all targeting
  • Community Slack support
Start pilot
Enterprise
Let's talk
Self-host, SSO, custom SLA, procurement teams welcome.
  • Dedicated cloud
  • SSO (SAML/SCIM on request)
  • Audit log exports
  • Data residency on request
  • Direct founder support
Contact sales
§ 08 — faqcommon questions · last updated apr 2026

Questions we actually get asked.

Optimize is dead and VWO rewrites your DOM with a mutation overlay — slow, fragile, and their builder is from 2014. Fragments renders production-grade native DOM through a purpose-built SDK, with SSR support, a modern builder, and feature flags baked in.
12.4 kb gzipped, zero dependencies, async by default, no render-blocking. p99 time-to-paint for a fragment is under 50ms globally. We publish our perf budget publicly and ship slower if we break it.
Yes. The SDK is framework-agnostic — you mark slots with data-fragment or use the thin adapter for your framework. SSR is supported natively; hydration is clean.
Default EU hosting; RU localization (152-ФЗ-compliant) and US on the roadmap. Custom regions on Enterprise. Fragments ships with consent-mode integration for GDPR and can be configured to not drop a single cookie until the user opts in.
No — that's literally the point of the product. After the one-time SDK install, everything happens in the dashboard. If you need a new slot on a new page, a dev adds one data-fragment attribute. That's it.
On the Enterprise plan, yes — either on-prem or in a dedicated cloud tenant. For most teams, our managed cloud is faster to roll out and cheaper to operate.
→ PILOT · 14 DAYS · NO CARD

Ship your first fragment before stand-up tomorrow.

We'll hop on a 30-minute call, drop the SDK into your site together, and push a live banner before you hang up. If not, lunch is on us.

Public beta — v0.1 Encryption in transit and at rest EU hosting (RU/US on roadmap) No vendor lock-in — export DOM anytime
why01how02platform03sdk04numbers05cases06pricing07faq08