The Scout database driver, and the ceiling it has

Laravel 9 ships a Scout driver backed by the database, which removes a search service from a project that had one for one feature.

// config/scout.php
'driver' => 'database',

// and what it does: LIKE queries, or full-text if the
// column has an index, across the toSearchableArray fields

// where it stops:
//   no relevance tuning beyond the index
//   no faceting or aggregations
//   no typo tolerance
//   a LIKE '%term%' cannot use an index at all

The ceiling is real and is worth measuring against your row count rather than guessing: on forty thousand rows with a full-text index this is indistinguishable from a search service, and on four hundred thousand with faceting it is not. The value is that the interface is the same, so moving to a real driver later is a configuration change rather than a rewrite — which makes starting here the cheap decision.