Skip to content
EditorStackPlayground

Visual Editor & Page Builder Libraries: The 2026 Comparison

This page compares 34 libraries, SDKs and platforms for embedding a visual editor or page builder in your own product, with 12 bundle sizes we measured ourselves rather than quoted from vendors.

Data last verified · 9 open source, 25 commercial · Download as JSON or CSV · Methodology

TL;DR

  • If you need to embed an editor in a React application and render your own components inside the canvas, Puck and Craft.js are the two libraries built for that; Puck ships an editor UI, Craft.js expects you to build one.
  • If the editor must work outside React or must output standalone HTML — an email builder, a template editor, a white-label site builder — GrapesJS is the framework-agnostic engine most teams end up on, at a measured 294.6 kB gzip for the core alone.
  • Commercial SDKs such as Builder.io, Unlayer and Beefree SDK sell you the parts open-source engines leave out — hosted storage, asset management, tested email HTML — and their entry prices in 2026 run from $60 to $350 per month.
  • Webflow, Framer and Elementor appear in this table only as build-versus-buy reference points: none of them can be embedded inside your own application.

Compare all 34 products

Filters update the URL so you can share a filtered view. Every row is in the page source, so the table is readable without JavaScript. Bundle sizes marked in kilobytes are our own measurements — see the bundle size benchmark for the method.

34 of 34 products

Visual editor and page builder libraries compared on licence, framework support, bundle size and price
ProductTypeLicenceFrameworksBundle (min+gzip)Price fromSelf-hostedWhite labelScore
Beefree SDKCommercial SDKProprietaryAny (framework-agnostic)Not measurablefrom $350/moNoYes
BlockNoteLibraryMPL-2.0React, Vue386.1 kB gzipfrom $195/moYesYes
BrizyPlatformProprietaryUnverifiedNot measurablefrom $159/moYes
Builder.ioCommercial SDKProprietaryReact, Vue, AngularNot measurablefrom $19/moNo
CKEditor 5LibraryGPL-2.0-or-later OR commercialAny (framework-agnostic)161.2 kB gzipfrom $144/moYes
Contentful StudioHeadless CMSMITReactNot measurableQuote onlyNoNo
Craft.jsLibraryMITReact29.2 kB gzipFree (open source)YesYes6.6
DirectusHeadless CMSBSL-1.1Any (framework-agnostic)Not measurablefrom $99/moYesYes
DudaPlatformProprietaryUnverifiedNot measurablefrom $19/moNoYes
Editor.jsLibraryApache-2.0Any (framework-agnostic)64.3 kB gzipFree (open source)YesYes7.7
ElementorPlatformGPL-3.0UnverifiedNot measurablefrom $59/yrYes
FramerPlatformProprietaryReactNot measurablefrom $10/moNoNo
GrapesJS plugins ↗LibraryBSD-3-ClauseAny (framework-agnostic)294.6 kB gzipFree (open source)YesYes7.5
GrapesJS Studio SDK plugins ↗Commercial SDKProprietaryAny (framework-agnostic)Not measurableFree tier, paid plans undisclosedYesYes
LexicalLibraryMITAny (framework-agnostic)104.9 kB gzipFree (open source)YesYes7.4
PageKit plugins ↗Commercial SDKProprietaryAny (framework-agnostic)Not measurablefrom $199 one-timeYesYes
PlasmicCommercial SDKProprietaryReactNot measurablefrom $39/moNoNo
PlateLibraryMITReact150.8 kB gzipFree (open source)YesYes8
PuckLibraryMITReact90.4 kB gzipFree (open source)YesYes8
QuillLibraryBSD-3-ClauseAny (framework-agnostic)58.7 kB gzipFree (open source)YesYes
React PageLibraryMITReact377.2 kB gzipFree (open source)YesYes6.4
Sanity Visual EditingHeadless CMSMITReact, VueNot measurablefrom $15/moNo
SilexLibraryGPL-3.0 OR MPL-2.0Any (framework-agnostic)Not measurableFree (open source)YesYes
SitejetPlatformProprietaryUnverifiedNot measurablefrom $89/moNo
StoryblokHeadless CMSProprietaryAny (framework-agnostic)Not measurableFree tier, paid plans undisclosedNoNo
Stripo PluginCommercial SDKProprietaryAny (framework-agnostic)Not measurablefrom $100/moNoYes
TeleportHQCommercial SDKProprietaryAny (framework-agnostic)Not measurablefrom $9/moNo
TinyMCELibraryGPL-2.0-or-later OR commercialAny (framework-agnostic)393.9 kB gzipfrom $79/moYes
TiptapLibraryMITAny (framework-agnostic)123.3 kB gzipFree tier, paid plans undisclosedYesYes8.3
Topol PluginCommercial SDKProprietaryAny (framework-agnostic)Not measurablefrom $60/moNoYes
UnlayerCommercial SDKProprietaryAny (framework-agnostic)Not measurablefrom $250/moYes
WebflowPlatformProprietaryUnverifiedNot measurablefrom $15/moNoNo
Wix StudioPlatformProprietaryUnverifiedNot measurablefrom $19/moNoNo
ZillapagePlatformProprietaryUnverifiedNot measurableUndisclosedYes

Start from what you are building

Each of these pages is the same dataset filtered to one decision, with the trade-offs that matter for it written out.

  • React page builder librariesEvery React page builder library in the EditorStack dataset, with licence, bundle size, SSR support and pricing side by side.
  • Open source visual editorsOpen source visual editor libraries with permissive or copyleft licences, compared on bundle size, extensibility and ecosystem.
  • Email editor SDKsEmbeddable email template builder SDKs — Unlayer, Beefree, Stripo, Topol and the open-source options — compared on pricing, white-label terms and export quality.
  • White-label website buildersWhite-label website builder engines you can resell under your own brand, compared on licensing, hosting model and per-tenant cost.
  • Self-hosted page buildersSelf-hosted visual editors and page builders: what you can run on your own infrastructure, and what each one costs to operate.
  • Framework-agnostic visual editorsVisual editors with no framework lock-in — mountable in React, Vue, Angular or plain JavaScript.
  • Headless CMS visual editingHeadless CMS platforms with visual editing: Storyblok, Sanity, Contentful Studio and Directus compared for developer teams.
  • Free visual editor librariesFree drag-and-drop editor libraries you can ship in production without a licence fee, and what each free tier actually covers.
  • Rich-text editor librariesRich-text and block document editors — CKEditor 5, TinyMCE, Tiptap, Lexical, Plate, BlockNote, Quill and Editor.js — compared on licence, measured bundle size, framework support and pricing.

How this comparison is built

Every fact in the table comes from a named source with the date we checked it. Licences, first-publish dates and current versions are read from the npm registry directly. Prices are taken from vendors' published pricing pages and labelled as vendor-published, because a price is a claim, not a measurement.

Bundle sizes are ours. We install each package on its own, import it through its documented entry point, bundle it with esbuild in production mode and gzip the result. The script is in the repository and the numbers fail the build if they drift from the recorded measurement run. Anything we could not verify is left empty rather than filled with a plausible number — that is why some cells say "Unverified" instead of a value.

We score only the products we have actually run. 8 libraries have scores; the commercial SDKs do not, because we have not put them through the same hands-on test and a score without that would be decoration. The reasoning is on the methodology page, and the funding relationship behind this site is on the disclosure page.