How to Find a LinkedIn Profile from an Email Address (and at Scale with an API)


There are three ways to find a LinkedIn profile from an email address: search for the person by name once you know who owns the address, ask a system that already holds the link (your CRM, your signup form, a colleague's inbox), or resolve it programmatically with a people data API that matches the email to a verified professional profile. The first works for one person. The second works when the link already exists. The third is the only one that works at scale — and it comes with a number you should know before you start: on business emails, Reverse Contact resolves more than 70% of lookups to a verified profile. The rest return null, on purpose.
An email address does not contain a LinkedIn profile
This sounds obvious, but most of the "hacks" written about this topic assume the opposite. An email is a string. A LinkedIn profile is a page someone maintains. Nothing in m.okafor@northwind-analytics.com points to linkedin.com/in/mayaokafor. What connects them is evidence: the domain belongs to a company, the company has employees with public profiles, one of those profiles matches the name pattern in the local part, the job title is consistent with what the domain suggests, and so on.
Finding a profile from an email is therefore not a lookup. It is a matching problem: you assemble signals, weigh them, and decide whether the evidence is strong enough to say "this is the person." Every method below is a different way of doing that matching — by hand, by accident, or by design.
Method 1: the manual search
If you know the person's name, the email is almost redundant: search LinkedIn for the name and the company suggested by the domain. If you only have the email, the local part often contains the name (firstname.lastname, f.lastname, flastname), and the domain gives you the employer. A LinkedIn search for "Maya Okafor Northwind Analytics" resolves the example above in seconds.
When it works: one person, a recognisable name pattern, a company with a small enough headcount that homonyms are unlikely.
When it fails: generic addresses (info@, sales@, hello@), initials-only patterns, common names inside large companies, and — critically — any personal email. A Gmail or Outlook.com address gives you no employer, so you are searching on a name alone. For "Maya Okafor" that might work. For "James Smith" it will not.
The manual method also leaves nothing behind: no record of what you matched, how confident you were, or when. That is fine for a one-off introduction. It is a liability the moment the result goes into a CRM that other people trust.
Method 2: the systems you already have
Before resolving anything externally, check whether the link already exists inside your own tools. Signup forms increasingly ask for a LinkedIn URL. CRMs like HubSpot and Salesforce store social profiles as native fields. Sales engagement tools often capture the profile when a rep connects with a lead. If your data model has a "LinkedIn URL" field that is 40% populated, the cheapest first step is to use it.
The limit is coverage. This method never creates a link — it only surfaces one that a human already made. For inbound leads you have never spoken to, for a list you bought or exported, or for the 60% of your CRM where the field is empty, you are back to matching.
Method 3: programmatic resolution with a people data API
A people data API does the matching for you, at whatever volume you send it, and returns a structured answer you can act on. With Reverse Contact, the request is a single call to the Person Enrichment API with the email as input. The response is either a full professional profile — name, current title, company, LinkedIn URL, work history, location and more — or null.
Three things make this different from the manual method, and they matter more than the speed:
- A confidence score on every match. The API does not just return a profile; it tells you how sure it is. Your product decides what to do with a borderline match — show it, hide it, ask a human. You can also raise the precision threshold in the request if a false positive costs you more than a miss.
nullinstead of a best guess. When the evidence is not strong enough, the answer is nothing. This is the single most important design decision in an enrichment API, and the one most often gotten wrong. A wrong LinkedIn URL in a CRM record is worse than an empty field: it looks complete, so nobody fixes it, and every downstream process inherits the error.- A stable identifier. Every resolved person carries an ID that stays the same across requests, job changes and company moves. That is what lets you deduplicate records and detect when the same person shows up twice under two emails.
The same profile is reachable from other starting points — a name plus a company domain, or a LinkedIn URL you already hold — through the Person Social Data API. Whatever the entry point, the schema of the answer is identical; see the full field list on the People Data page.
What the 70% means — and where it is lower
On business email addresses, Reverse Contact resolves more than 70% of lookups to a verified profile. The remaining lookups return null. That figure is worth reading carefully, because it hides a split that matters for anyone working with European data.
Business emails resolve well everywhere, because the domain is a strong signal and professional profiles are, by design, public.
Personal emails are a different story, and the difference is geographic. Outside Europe, a personal address can often be resolved to a professional profile, because the link between the two is frequently visible in public sources. In Europe, that link is rarely public. GDPR's data-minimisation principle means people and platforms expose far less of it, and Reverse Contact does not infer what is not there: if the evidence connecting a personal email to a profile is not publicly available, the answer is null. As a result, match rates on personal emails are markedly lower for European individuals than for the rest of the world. This is not a gap in the data. It is the law working as intended, and an enrichment provider that reports high personal-email match rates in Europe should be asked how.
Practically: if your leads come in on work emails, expect the 70%+. If they come in on Gmail addresses from European users, expect much less, and build your funnel so that a null is a normal outcome rather than an error.
False positives: where matching goes wrong, and how it is handled
Every matching system produces false positives; the question is what it does about them. The three classic cases:
- Homonyms inside large companies. Two people named Ana Silva at a 40,000-employee bank. The domain alone cannot separate them. Additional signals — the local-part pattern, the department implied by the address, the location — either break the tie or they do not. If they do not, the correct answer is
null. - Generic and role addresses.
marketing@is not a person. A well-designed API returns nothing rather than the most senior marketer it can find. - Job changes. The email belonged to someone who has since left. The profile now shows a different employer. A match here is technically correct — it is the same person — but the email is dead. This is why the response carries a
last-updatedtimestamp: you can see how fresh the match is and re-verify the address before you send anything to it.
What this does not do
Three limits, stated plainly. Reverse Contact resolves professional identities from publicly available B2B sources. It does not resolve private individuals in a personal capacity, it does not surface profiles that people have made private, and it does not offer ways around platform restrictions. If an address belongs to someone who has no public professional footprint, there is nothing to return — and nothing should be.
The legal frame, in one paragraph
Reverse Contact processes publicly available professional data under a legitimate-interest basis, restricted to a business context, with data-subject rights (access, rectification, erasure, objection) handled through a documented process. The full posture — legal basis, sourcing principles, retention, sub-processors and the Data Processing Agreement — is published in the Trust Center. If your own use of the resolved data goes beyond B2B prospecting or CRM hygiene, you are the controller for that use and should assess it separately.
Frequently asked questions
Can I find a LinkedIn profile from a Gmail address?
Sometimes, and it depends heavily on where the person is. Outside Europe, personal emails resolve to professional profiles reasonably often. For European individuals the public link between a personal email and a professional profile is rare, so most lookups return null. Business emails resolve at 70%+ regardless of region.
Does this work in bulk?
Yes. The same resolution runs on a single request, on a CSV of a hundred thousand rows through CSV enrichment, or asynchronously through webhooks when you do not want to wait on each response.
What happens when there is no match?
You get null and you are not charged a credit. No result, no cost — which also removes the incentive to return a weak match.
Is finding someone's LinkedIn from their email legal?
For professional data in a business context, under GDPR and CCPA, yes — provided the processing has a legitimate basis, the data comes from public professional sources, and the person's rights are respected. That is how Reverse Contact operates; the specifics are in the Trust Center. Using the result for anything outside a business context is a different question, and it is yours to answer.

The data layer behind your GTM engine
Access fresh people and company data through one API and power every enrichment, prospecting, and automation workflow.
