| Core search | Typo-tolerant keyword search, filtering, faceting, query-time sorting, geo search, vector search, semantic search, and hybrid search | Typo-tolerant keyword search, filtering, faceting, query-time sorting, geo search, vector search, semantic search, and hybrid search |
| License and hosting | All API capabilities, including Raft high availability, are available in the open-source server. Self-host it free or run the same server in a dedicated Typesense Cloud cluster. | Community Edition is MIT licensed. Enterprise Edition code is public under a source-available BUSL license, but it cannot be freely used in production. Production sharding and replication require Enterprise Edition or Cloud. |
| Storage and memory | Keeps fields used for search, filtering, sorting, and faceting in memory; source documents and unindexed fields remain on disk | Memory-mapped LMDB storage can serve indexes larger than RAM, though Meilisearch performs best when it has enough RAM to hold the entire dataset. |
| Schema and validation | With ingestion-time type validation, Typesense supports automatic schema detection or strict schemas to keep collections clean | Schema-less. Mixed field types are accepted. Meilisearch's sorting guidance warns that they can produce unexpected order. |
| Typo tolerance | Enabled by default and tunable per query and per field | Enabled by default, with index-level thresholds and exclusions. It can be disabled for selected attributes or words, but typo thresholds cannot be changed per query. |
| Runtime sorting | Choose one or more sort fields and directions at query time on one collection. For example, price low-to-high, price high-to-low, and newest all use sort_by. | Choose one or more sort fields and directions at query time on one index after configuring sortable attributes. For example, price low-to-high, price high-to-low, and newest do not need separate indexes. |
| Nested arrays of objects | Stable correlated nested-object filters keep multiple conditions bound to the same object inside an array | Precise array relationships use experimental foreign keys. This model is unavailable with remote sharding, and a foreign filter returns an error when its related-side condition matches more than 100 documents. |
| Relationships between collections | Stable cross-collection JOINs with filtering, nested joins, field inclusion, faceting, and sorting | Experimental one-way foreign keys and hydration are unavailable with remote sharding. A foreign filter returns an error when its related-side condition matches more than 100 documents. |
| Geo fields per record | Any number of independently queryable named geo fields. For example, one record can have separate pickup, delivery, warehouse, and service-area locations. | Each record supports one reserved _geo point for distance sorting, plus one _geojson point or shape. Distance sorting does not work with _geojson. |
| Vector, semantic, and hybrid search | HNSW semantic and hybrid search with built-in models, OpenAI, Azure OpenAI, OpenAI-compatible APIs, Google Gemini or Vertex AI, and user-provided vectors | Semantic and hybrid search with DiskANN and embedders for OpenAI, Hugging Face, Cohere, Mistral, Voyage, Gemini, Cloudflare, Ollama, custom REST APIs, and user-provided vectors |
| Natural Language Search | Typesense has built-in Natural Language Search that uses an LLM to turn requests such as “the most powerful car under $50K” into structured search terms, filters, and sort parameters. | There is no built-in equivalent for translating a natural-language request into structured search, filter, and sort parameters. Semantic search and conversational RAG solve different problems. |
| Conversational Search / RAG | Production conversational search API with streaming, conversation history, and configurable LLM models | RAG chat with streaming and workspaces is available, but it remains an experimental feature. |
| Multi-tenancy | Scoped keys can lock each user to permitted organizations, roles, fields, query limits, and an expiry time without a server round trip | JWT tenant tokens can restrict indexes, enforce document filters, and expire |
| Search analytics | Available in the open-source server and Typesense Cloud, including search, click, conversion, and visit events | Meilisearch Cloud has a search analytics dashboard for queries, no-result rate, latency, clicks, conversions, and geographic distribution |
| Merchandising and curation | The open-source API and Typesense Cloud UI support includes, excludes, query replacement, filters, sort controls, and rule-based curations | Search rules are experimental and pinning-only today. Three rules per Cloud project are free; additional rules are a paid add-on. |
| High availability | Raft clustering in the open-source server with automatic leader election. Typesense Cloud supports 3 to 7 nodes and reroutes traffic away from failed nodes. | Enterprise Edition or Cloud replication automatically retries a network search on another replica when a remote is unavailable. One static leader handles every write. There is no automatic leader election, so leader failure blocks writes until manual promotion, a known limitation for write availability. |
| Geo distribution | Typesense Cloud's Search Delivery Network distributes a cluster across up to 7 regions from 26 choices, routes searches to the nearest node, and fails over automatically | Enterprise replication supports geographically routed reads. Optimal routing is not currently available when sharding and replication are combined. |
| InstantSearch UI | The Typesense-InstantSearch adapter lets Algolia's widgets work with Typesense for JavaScript, React, Vue, and Angular | instant-meilisearch connects Meilisearch to the InstantSearch.js ecosystem |
| Hosted crawler | The Typesense DocSearch scraper crawls and indexes documentation sites, but the crawler must be self-hosted | Meilisearch Cloud includes a hosted crawler with JavaScript rendering, DocSearch mode, and schema extraction |
| Serverless offering | No. Typesense runs as provisioned persistent compute. | No. Standard Meilisearch Cloud runs on provisioned persistent compute. |
| Support hours | Typesense Cloud includes 24/7/365 critical production support for HA clusters, with faster response targets on higher support tiers | Email support is included in Cloud. Enterprise offers 24/7 support targets, including a one-hour target for urgent production outages. |