Compare Nuxt Integrations
Compare Better Convex Nuxt with nuxt-convex, convex-nuxt, and a manual Convex integration.
Choose by the amount of integration you want to own.
- Choose Better Convex Nuxt for an opinionated Nuxt 4 runtime covering SSR-to-live queries, identity-safe Better Auth, server calls, stateful writes, uploads, and operational tooling.
- Evaluate nuxt-convex when its smaller query and storage surface matches your app and you accept its current work-in-progress status.
- Evaluate convex-nuxt for its Nuxt 3 and
convex-vuemodel, especially if you already use that stack. - Build manually when direct client ownership matters more than a maintained Nuxt-specific contract.
Verified versions
This comparison was verified on July 14, 2026 against released npm artifacts and official project documentation.
| Project | Compared version | Declared foundation |
|---|---|---|
| Better Convex Nuxt | 0.6.1 | Nuxt 4.4, Convex 1.42, Better Auth 1.6 |
nuxt-convex | 0.0.6 | @convex-vue/core and Convex |
convex-nuxt | 0.1.5 | Nuxt 3 and convex-vue |
| Manual integration | Convex 1.42.1 | Official Convex clients plus application code |
Capability matrix
“Not documented” means the released artifact or official documentation reviewed for this comparison does not define the behavior. It does not prove the behavior is impossible.
| Capability | Better Convex Nuxt 0.6.1 | nuxt-convex 0.0.6 | convex-nuxt 0.1.5 | Manual integration |
|---|---|---|---|---|
| Nuxt generation | Nuxt ^4.4.0 | Nuxt module; released types use Nuxt APIs | Documents Nuxt 3 | You decide |
| SSR-to-live query | Built-in, SSR and subscription enabled by default | useConvexQuery; SSR enabled initially | Documents SSR/SSG via suspense and live queries | Application-owned |
| Query auth modes | required, optional, none | Not documented | Token callback on raw client | Application-owned |
| Identity-change isolation | Documented and tested client replacement | Not documented | Not documented | Application-owned |
| Pagination composable | Built-in | Not in the 0.0.6 tarball surface | Not documented | Application-owned |
| Stateful mutation/action wrappers | Built-in | Not in the 0.0.6 tarball surface | Uses convex-vue APIs | Application-owned |
| Optimistic helpers | Regular and paginated helpers | Not in the 0.0.6 tarball surface | Not documented | Application-owned |
| Better Auth integration | Built-in optional runtime | Not documented | Authentication-provider callback example uses Clerk | Application-owned |
| Nitro server caller | serverConvex query/mutation/action | Not in the 0.0.6 tarball surface | Not documented | Application-owned |
| File support | Upload, queue, storage URL | Upload and storage composables | Not documented | Application-owned |
| Shared error contract | ConvexCallError client/server entry | Not documented | Not documented | Application-owned |
| Connection state and DevTools | Built-in | Not documented | Not documented | Application-owned |
Architectural difference
Integrated runtime
Better Convex Nuxt treats SSR, hydration, subscriptions, auth settlement, identity changes, and teardown as one runtime problem. This produces a larger and more opinionated API.
The cost is commitment to its supported lifecycle and exact dependency range.
Smaller wrapper
nuxt-convex exposes a focused SSR query plus file-storage helpers in its 0.0.6 artifact. Its README labels the project work in progress and not ready for production use.
The smaller surface can be attractive when those are the only abstractions wanted. The application owns behavior that is not defined by that surface.
Nuxt 3 integration
convex-nuxt documents real-time queries, SSR/SSG through suspense, and authentication by calling setAuth on its Convex client. It is based on convex-vue and declares Nuxt 3-era dependencies.
This model may fit an existing Nuxt 3 application. It is not a drop-in equivalent to the Nuxt 4 and Better Auth contract documented here.
Manual integration
A manual integration gives full control over client construction, auth, server calls, and lifecycle. It also makes the application responsible for hydration reuse, identity races, cleanup, error normalization, and long-term compatibility.
Choose it when those behaviors are product-specific enough that a shared integration runtime would be the wrong owner.
Sources
- Better Convex Nuxt repository
nuxt-convexon npmnuxt-convexrepositoryconvex-nuxton npmconvex-nuxtrepository- Convex JavaScript clients
Reverify versions and evidence before changing this matrix. Do not copy the table into another page.