FIND

Locate the position of a text string inside another text string with Excel's case-sensitive FIND function.

Text
|
Excel All versions
|
Google Sheets Supported

Spreadsheet editor

Syntax

=FIND(substring, text, [start_num]) Returns: Number

Arguments

Argument Required Description
substring Yes The text you want to find within the main text.
text Yes The text string in which you want to search for the substring.
start_num No The character position in the main text where the search should start. If omitted, the search starts at the beginning of the text.

About

The FIND function returns the starting position of one text string inside another. It's case-sensitive, so "Price" and "price" are treated as different values. Use FIND when you need to know exactly where a character or word appears in a cell.

FIND is especially helpful when you combine it with other text functions. For example, pair it with MID or LEFT to pull out part of a string, or use it with SUBSTITUTE to replace text at a specific spot. If you don't need case-sensitive matching, try SEARCH instead, which also supports wildcard characters.

FIND does not support wildcards (* or ?). If the text you're looking for isn't found, or if the start position is out of range, Excel returns a #VALUE! error. You can wrap FIND in IFERROR to handle that gracefully.

Examples

Finding a separator in product codes

See where the hyphen appears in each product code. Edit the SKU values and watch FIND return the exact character position you can use in follow-up text formulas.

Spreadsheet editor

Searching from a specific position

Watch FIND skip the first comma and jump to the second one in each text string. Try adding another comma earlier in the cell to see how the starting position changes the result.

Spreadsheet editor

Checking for uppercase with case-sensitive matching

Notice that FIND only matches uppercase "Q" in this list of report titles. Change the text casing and see which rows return a position and which ones fall into a #VALUE! error.

Spreadsheet editor

Watch out for

Forgetting case sensitivity

FIND("apple", "Apple Juice") returns a #VALUE! error because "apple" does not match "Apple".

If you don't need case-sensitive matching, use SEARCH instead.

Not handling missing text

When the search text isn't found, FIND returns #VALUE!, which can break downstream formulas.

Wrap your formula in IFERROR to return a fallback value, like 0 or an empty string.

Setting start_num to 0 or a negative number

FIND requires start_num to be 1 or greater. A value of 0 or below triggers a #VALUE! error.

Always pass a positive number for start_num, or leave it out to start from position 1.

Tips & notes

FIND counts every character as 1, whether single-byte or double-byte. If you pass an empty string as the search text, FIND returns the value of start_num (or 1 if start_num is omitted).

Common questions

What is the difference between FIND and SEARCH in Excel?

FIND is case-sensitive and does not support wildcards. SEARCH is case-insensitive and lets you use * and ? as wildcard characters. Pick FIND when the exact casing matters, and SEARCH when it doesn't.

Can FIND locate the second or third occurrence of a character?

Yes. Nest FIND calls and use the start_num argument. For example, =FIND(",", A2, FIND(",", A2) + 1) finds the second comma by starting the search one character past the first match.

Does FIND work with numbers or dates?

FIND works on the text representation of a value. If a cell displays a date or number, you may need to convert it to text first with the TEXT function so FIND can search it reliably.