ravn
Guide

How an email finder turns a name into an address.

An email finder takes a person's name and their company domain, works out which address pattern that company uses, builds the likely address, and then verifies it. The output is a best guess with a confidence score, not a looked-up fact.

By Ravn · 3 November 2026

Start free: 1,000 lookups Read the docs

Patterns

What are email address patterns?

Most companies give staff addresses in one consistent format, set when the mail system was first configured. For a person called Jane Doe at acme.com, the common formats are:

  • first.last: jane.doe@acme.com
  • flast: jdoe@acme.com
  • firstlast: janedoe@acme.com
  • first: jane@acme.com
  • f.last: j.doe@acme.com
  • first_last: jane_doe@acme.com
  • firstl or lastf: janed@acme.com, doej@acme.com

Small companies often use first names only. Larger ones tend towards first.last or flast because first names collide quickly. Exceptions exist everywhere: two people with the same name, a founder who kept a short address, a company that changed format after a merger.

Learning

How does a finder learn which pattern a company uses?

By looking at addresses the company has published itself. A team page, a press contact, a support address with a named person, a footer: each real address at the domain is evidence. If the site lists maria.lopez@acme.com and tom.reed@acme.com, the pattern is almost certainly first.last.

Ravn's search_business_email_by_name learns the pattern from the company's own website. You give it a name (or first_name and last_name) and the company domain. It returns the address, the pattern it used, a verification status, a risk_score and a confidence between 0 and 1. The email finder API page covers the inputs and outputs.

Names need care. Accents, hyphenated surnames, middle names and nicknames all change the result. "Bob" may be robert.smith; "María José" may be written several ways. Passing clean first and last names separately gives a finder the best chance.

The process

What happens between the name and the answer?

  1. / 01

    Normalise the name

    Split it into first and last, strip titles like Dr, and handle accents and hyphens consistently.

  2. / 02

    Find the pattern

    Read public addresses on the company domain to work out the format it uses.

  3. / 03

    Build candidates

    Apply the learned pattern first. Without clear evidence, a finder may try the most common formats in order.

  4. / 04

    Verify

    Run each candidate through the same checks a verifier uses: syntax, DNS, MX, then the mailbox check where it is possible.

  5. / 05

    Score it

    Combine pattern evidence and verification into a confidence score, and flag the result if the domain is catch-all.

Confidence

What does a confidence score actually tell you?

It tells you how much evidence backs the guess. A pattern seen several times on the company's site, plus a mail server that confirmed the mailbox, is strong. A common pattern applied with no evidence, on a server that would not answer, is weak.

Catch-all domains are the hard case. The server accepts every address, so verification cannot separate jane.doe@ from jdoe@. Ravn marks those results as risky, so you know the answer rests on pattern evidence alone. The catch-all guide explains why.

Use the confidence score with the status, not instead of it. A sensible rule: use high-confidence valid results directly, and treat risky or low-confidence results as leads to confirm another way.

A confirmed mailbox also does not prove it belongs to the right person. If two people share a name at the same company, the pattern points to whichever one got the address first, and the other may have a number or a middle initial added. When it matters, check the person's title or department against another source before you write.

Try it

How do you find one address, or a whole list?

One person from the CLI, or a CSV of names and company websites.

# One person
npx ravn search_business_email_by_name --name "Jane Doe" --company acme.com

# A CSV with Name and Website columns, mapped to the tool's inputs
npx ravn enrich leads.csv --tool search_business_email_by_name \
  --map name=Name,company=Website --out leads-with-email.csv

# REST
curl https://api.askravn.com/v1/tools/search_business_email_by_name \
  -H "Authorization: Bearer $RAVN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"first_name": "Jane", "last_name": "Doe", "company": "acme.com"}'
Other routes

When should you use something other than a pattern finder?

When you do not know the person's name yet. A pattern finder needs a name and a domain. If you only know the company and the role, start with people search, which runs on your own People Data Labs key, then find or verify the email. If you have an email and want to know who it belongs to, reverse email lookup goes the other way.

Finding an address does not give you permission to use it. The compliance page covers lawful basis and opt-outs, and the compliance guide explains the main laws in plain language. To try the finder without a key, use the free email finder.

FAQ

Common questions.

All questions →

Does an email finder look addresses up in a database?

A pattern-based finder does not. It works out the company's address format from public addresses on its site, builds the likely address, and verifies it. Record-lookup tools that run on your own provider key are a separate approach.

What is the most common business email pattern?

Formats like first.last and flast are widespread, but it varies by company. That is why a good finder learns the pattern from each company's own published addresses rather than assuming one.

Why did the finder return a risky result with a pattern?

Usually because the domain is catch-all. The address follows the learned pattern, but the mail server accepts everything, so the mailbox itself cannot be confirmed.

Does a miss cost anything on Ravn?

No. When a tool returns not_found, the lookup is given back, so you only pay for answers.