PostgreSQL’s built-in full-text search is getting a moment in the sun. The debate pits native PostgreSQL FTS in Supabase against pulling in Elasticsearch or Meilisearch for larger, shinier search needs [1].
• PostgreSQL FTS — the native option that you can query in SQL via Supabase. For many small to mid-size apps, this is fast and infrastructure-free, until you consider growth. Be aware: DB full-text indexes tend to get huge over time [1].
• Elasticsearch — the familiar, marketable choice. It’s still a valid path, but the post notes that for some teams it’s overkill or hard to justify in enterprise contexts; plain Lucene usage can also be tricky to configure [1].
• Meilisearch — a starter-friendly alternative that’s less resource-hungry than Elasticsearch and aims to offer similar features, making it appealing for early-stage apps [1].
The takeaway: native PostgreSQL FTS can cover a lot of ground without extra infra, but as data scales, external engines often enter the conversation to balance features, performance, and operational complexity. Keep an eye on index growth and the specific search needs of your app as you scale [1].
Closing thought: for many teams, the built-in route is a solid default—until your search surface expands beyond SQL-native queries, then external engines become worth the lift.
References
Skip Elasticsearch: Build Fast Full-Text Search Right in Supabase
Advocates Postgres FTS with Supabase as an alternative to Elasticsearch; compares to Meilisearch and other engines, debates scale tradeoffs.
View source