← All comparisons

FIND vs SEARCH (vs MATCH): locating text the right way

FIND and SEARCH both return where a substring starts inside a text cell — they differ on exactly two things: case sensitivity and wildcards. MATCH sounds similar but answers a different question entirely: which ROW of a range holds a value.

The differences at a glance

FINDSEARCHMATCH
Looks insideOne text stringOne text stringA range of cells
ReturnsCharacter positionCharacter positionPosition (row/column number) in the range
Case-sensitiveYes — "Red" ≠ "red"NoNo (exact-match mode)
Wildcards (* ?)No — treated literallyYesYes (with match type 0)
Not found#VALUE!#VALUE!#N/A
CompatibilityUniversalUniversalUniversal — all verified in every version we test

Which should you use?

Compatibility (Excel for the web, Sheets & LibreOffice executed; desktop Excel per docs)

All three execute identically in every LibreOffice build and in the Google Sheets run we execute (desktop Excel per Microsoft's docs — we do not run desktop Excel) — this is one area with genuinely zero cross-app surprises. The gotchas are inside the functions themselves (case, wildcards, error types), not between apps. Excel for the web is a separate application with its own calculation engine, and that one we do execute: all 12 corpus cases for these functions matched the documented values there (recalculated on OneDrive, 2026-09-01); the per-case values are on the individual function pages.

Example formulas

Contains check (case-insensitive)=ISNUMBER(SEARCH("red",A2))
Case-sensitive position=FIND("ID-",A2)
Which row holds the value=MATCH("cherry",A2:A10,0)

Full per-version details on each function page: FIND · SEARCH · MATCH.

How-to recipes using these functions