Web Development · head to head
Preact vs React

Preact
Web Development
3kB alternative to React with the same modern API
- From
- Free
- Rated
- -

React
Web Development
A JavaScript library for building user interfaces
- From
- Free
- Rated
- -
The short version
- Each has a real cost: Preact compatibility through preact/compat is good but not total, and some React libraries break in ways that are hard to diagnose; React jSX requires a build step using Webpack, Babel, or other transpilers to convert to browser-executable JavaScript
- They diverge on capability: Preact covers 3kB runtime, React covers Component-based architecture.
Where they differ
Only the attributes on which Preact and React actually diverge.
Identical on both: starting price (Free), free tier (Yes), user rating (Not yet rated), category (Web Development).
What each one covers
Drawn from each product's published feature list. An absence here means we hold no record of it - not that the product lacks it.
Only in Preact
- 3kB runtime
- preact/compat
- Same modern API
- Fast rendering
Only in React
- Component-based architecture
- Virtual DOM
- JSX syntax
- Unidirectional data flow
- React Hooks
- Server-side rendering
- Hot reloading
- Developer tools
What people use each for
The jobs each tool is most often brought in to do.
Preact
- Embedded widgets that load inside someone else’s page and must stay smallnot React
- Marketing and content sites where JavaScript payload affects Core Web Vitalsnot React
- Applications targeting low-bandwidth or low-powered devicesnot React
React
- Web application developmentnot Preact
- Single-page applicationsnot Preact
- Interactive user interfacesnot Preact
- Mobile app developmentnot Preact
- Component librariesnot Preact
Where each one falls short
Documented limitations, not opinions. Every one is a constraint you would hit in normal use.
Preact
- Compatibility through preact/compat is good but not total, and some React libraries break in ways that are hard to diagnose
- Behavioural differences from React exist in edge cases, particularly around event handling
- A much smaller community, so unusual problems have fewer existing answers than React
React
- JSX requires a build step using Webpack, Babel, or other transpilers to convert to browser-executable JavaScript
- Routing and state management are separate dependencies, not included in core library
- Configuration complexity for advanced features like server-side rendering without a meta-framework
- Requires choosing and configuring build tools and development environment setup
Pricing, plan by plan
Preact
Free- PreactFree
- Full library
- Commercial use permitted
- No usage limits
React
Free- Open SourceFree
- Component-based architecture
- Virtual DOM
- JSX syntax
Which should you pick?
Choose Preact if
- You need 3kb runtime.
- You want to start without paying.
- You also want preact/compat.
Choose React if
- You need component-based architecture.
- You want to start without paying.
- You work on Web, Mobile.
- You also want virtual dom.
Questions people ask
- Is Preact or React better?
- Neither clearly leads. Preact starts at Free and React at Free, and user ratings are close enough to be indistinguishable. Choose on capability and platform support.
- Which is cheaper, Preact or React?
- Preact starts at Free and React at Free.
- Does Preact or React run on more platforms?
- Preact runs on Web. React runs on Web, Mobile.
- Can I use Preact for free?
- Both have a free tier, so you can try either at no cost before committing.
- What is Preact best used for?
- Preact is most often used for embedded widgets that load inside someone else’s page and must stay small, marketing and content sites where javascript payload affects core web vitals, applications targeting low-bandwidth or low-powered devices. Of those, embedded widgets that load inside someone else’s page and must stay small and marketing and content sites where javascript payload affects core web vitals are not what React is typically brought in for.
- What can Preact do that React cannot?
- Preact covers 3kB runtime, preact/compat, Same modern API, Fast rendering. React covers Component-based architecture, Virtual DOM, JSX syntax, Unidirectional data flow.
Answered from the vendors’ own pages
Preact: Is Preact free?
Yes, open source under the MIT licence.
React: Is React free to use commercially?
Yes. React is distributed under the MIT open-source license, which permits free usage for both personal and commercial projects without licensing fees or restrictions.
SourcePreact: Can I use React libraries with Preact?
Most, through the preact/compat layer. Compatibility is good but not complete, so libraries relying on React internals can break.
React: Does React support TypeScript?
Yes. React works seamlessly with TypeScript for type-safe component development. TypeScript provides static type checking for React components, props, and state, improving code reliability and developer experience.
SourcePreact: Why choose Preact over React?
Bundle size, almost always. If payload is not a binding constraint, React’s ecosystem is usually the better trade.
React: Do I need a build step to use React?
If you use JSX, yes. JSX requires transpilation by a build tool like Webpack and Babel before browsers can execute it. However, React can be used without JSX by calling React.createElement directly, which does not require a build step.
SourceReact: Can I build offline-capable applications with React?
Yes. React supports building Progressive Web Apps (PWAs) with service workers and IndexedDB for offline functionality. Create React App includes service worker setup, though it must be manually enabled for production use.
SourceRelated pages
Other head to heads
- Preact vs Next.js
- Preact vs Django
- Preact vs MySQL
- Preact vs Flask
- Preact vs Vue.js
- Preact vs Tailwind CSS
- Preact vs Docusaurus
- Preact vs Laravel
- Preact vs MUI
- Preact vs Nginx
- Preact vs Remix
- Preact vs esbuild
- Preact vs npm
- Preact vs SolidStart
- Preact vs TanStack Start
- Preact vs Alpine.js
- Preact vs Astro
- Preact vs Carrd
- Preact vs HTMX
- React vs Next.js
- React vs Django
- React vs MySQL
- React vs Flask
- React vs Vue.js
- React vs Tailwind CSS
- React vs Docusaurus
- React vs Laravel
- React vs MUI
- React vs Nginx
- React vs Remix
- React vs esbuild
- React vs npm
- React vs SolidStart
- React vs TanStack Start
- React vs Alpine.js
- React vs Astro
- React vs Carrd
- React vs HTMX
