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.