How Inbox recognition works, and reviewing what it found

Updated Markdown

"The Inbox" covers pasting things in and the overall flow; this goes deeper on what Recognize contacts actually does with different kinds of input, what its badges mean, and how to correct what it got wrong.

Recognition depends on what you pasted#

  • A calendar invitation (.ics) — the organizer and every attendee become one candidate each.
  • A vCard — one candidate per card.
  • A table (CSV, JSON, or a pasted spreadsheet block) — one candidate per row, with columns matched to the right field automatically. A table with 10 rows or fewer is recognized directly with no extra step. Anything bigger (more than 10 rows, at least 3 columns) shows a table card instead: Import as list always, plus Recognize here anyway when the table is 50 rows or fewer — over 50 rows, only Import as list is offered. See "The Inbox" for that card.
  • A short line of text (a signature, a single contact), or one contact per line for several lines — each becomes its own candidate directly, with no AI step.
  • Longer free text (an email body, a forwarded PDF, a note) — read by AI to pull out several candidates, at most 50 per run. This is the one case that adds AI cost on top of the base charge (see "The Inbox" for the exact cost); every other case above (invitations, vCards, tables, short text and contact lines) costs exactly the base amount, never more.
  • A forwarded e-mail's body always goes through this free-text AI reading, never the short-text or one-line-per-person shortcuts above — even a short forwarded note can contain a "From:"/"Von:" header that those shortcuts would misread as a name. In that header block, the original sender is the contact; you (whoever forwarded it) and the addressee on the "To:"/"An:" line are recognised as yourself and skipped, the same as everywhere else in the app.

Only real people and real organisations someone would plausibly do business with become candidates: a venue, hotel or conference centre, an event or conference name, a product, a city, a country, a date, or a headline or button text in capitals ("BARCELONA", "FINAL DEADLINE") is never turned into a contact. When it's unclear, ListPlus leaves it out rather than guess.

Hard material — long text, a newsletter with many all-caps headline-style lines, or a thread with several "From:"/"Von:" header blocks — is read by a stronger AI model instead of the standard one, because getting the right contact out of it is harder; this only changes the AI cost added on top of the base amount (see "The Inbox" for how that's shown before you click).

Before longer free text reaches the AI, ListPlus strips noise that would otherwise slow it down without adding information: repeated mailto:/ https: links, quote markers, repeated From/To/Cc/Subject lines from a mail thread, image filename placeholders, and duplicate paragraphs (the same signature or disclaimer repeated in every reply). For material longer than about 24,000 characters, it keeps the beginning (roughly the first quarter) plus every line with a contact signal anywhere in the text — an email address, a phone number, a job title like "CEO" or "Head of", or a word like "Impressum" or "Vertrieb" — and fills in the rest as space allows; skipped stretches show as "[…]" internally but every value in the result is still checked against your original text. Even when the same person appears many times (a signature, quoted replies, forwarded threads), recognition produces exactly one candidate for them, merging their details.

Every candidate is then checked for placeholder, test or generic role-address values. When an entry has 5 candidates or fewer, each is also matched against the web automatically, the same way Person Search does it. With more, click Find person on a row to look it up (free).

You're never offered as a contact#

Recognition automatically drops your own account email address, and — for mail you forwarded — the address you forwarded from, along with any name-only mentions of that person (a "Hi Anna," greeting line, for example). This applies to every entry, not only forwarded email.

Document header, for material about an organisation#

When longer free text is clearly from or mainly about one organisation (a brochure, a company newsletter, a letter), the result opens with a small header card naming that organisation and one sentence on what it does — only when the text makes that clear. A list of several people or a thread between different companies doesn't get a header, since no single organisation is central.

The badges#

A recognized row shows at most one badge:

  • Please check — something about the row needs a look before you rely on it: it might be a placeholder, a test record or a generic role address, or the first name is only an abbreviation in the source text. When the person is only named in passing — a speaker on an agenda, a quote in an article, someone in a newsletter's attendee list — the row carries the same "Please check" badge with the hint "Only mentioned in the text – not a direct contact" instead, and always waits for you to decide; it never counts as confirmed.
  • Already saved — this person or company matches one you've already saved; it's linked to that existing record instead of duplicated.
  • Saved, In list (or In list · [list name]), and Not saved show once you've acted on a row: put on the Watchlist, sent to a list, or dismissed.
  • No badge — nothing looked like a placeholder and it isn't linked to an existing saved contact; it's ready to tick.

Choosing the right profile#

If more than one LinkedIn profile could match a person, the row is locked with Is this the right person? and a list of candidates — pick one, or click None of these if none fit. The row unlocks and becomes selectable as soon as you decide.

Correcting a candidate#

Expand a row with the arrow on its right. Under Review details, type a correction into any field — first name, last name, job title, company, email or phone for a person; company name, domain, website or industry for a company. It saves as soon as you leave the field. Corrections are free, don't trigger a new recognition run, and are possible until you save, list or dismiss the row.

Related topics: inbox · saved-contacts.

FAQ#

Why do some Inbox rows say "Please check" and others don't?#

"Please check" appears when the row looks like it could be a placeholder, a test record or a generic role address, or when the first name in your source text is only an abbreviation. A row with no badge raised none of these flags.

What does "Already saved" mean on a recognized row?#

It means this person or company matches someone you've already saved — ListPlus links the row to that existing record instead of creating a duplicate.

Does recognition work differently for a calendar invite than for a pasted table?#

Yes. An invitation turns its organizer and attendees into one candidate each, a vCard becomes one candidate per card, and a table of 10 rows or fewer becomes one candidate per row with columns matched automatically — bigger tables (up to 50 rows) need one extra click on Recognize here anyway, or go straight to the list import. Only longer free text is read by AI to extract several candidates, which is the one case with an AI charge on top of the base cost.

I pasted several contacts as plain lines of text — does each line become its own candidate?#

Yes, for a short list of lines (up to 40): each line starting with a name becomes its own candidate, with any following line (email, phone, title) attached to it. This still costs the base charge like every recognition run, but never the extra AI charge — it's not the free-text extraction path.

Can I fix a wrong name, title or email before saving or adding to a list?#

Yes — expand the row with the arrow on its right and type the correction under Review details; it saves as soon as you leave the field, with no extra charge or new recognition run, and stays editable until you save, list or dismiss the row.

Is there a limit to how much text ListPlus can extract candidates from?#

Yes. Before sending long free text to the AI, ListPlus removes repeated quote headers, signatures and disclaimers, then — if what's left is still over about 24,000 characters — keeps the beginning plus every line with a contact signal (an email, a phone number, a job title, "Impressum") rather than just cutting off the end, so contact details near the bottom aren't lost. Extraction stops at 50 candidates per paste either way; split a very long or contact-dense document into smaller pastes for full coverage.

Does recognizing a document tell me what it's about?#

For longer free text clearly from or about one organisation (a brochure, a newsletter, a forwarded PDF), the result opens with a header card naming that organisation and a one-sentence summary, drawn only from your text. Material without a single central organisation — a contact list, a thread between several companies — doesn't get one.

Will recognition ever suggest me as a contact?#

No. Your own account email address is always excluded, and for a forwarded email, the address you forwarded from is excluded too, along with plain name mentions of that same person (like a greeting line). This applies to every entry, not just email.

How does recognition handle a forwarded e-mail?#

It always reads the body as free text, even a short one, because a "From:"/"Von:" header could otherwise be misread as a name. In that header block, the original sender becomes the contact; you and the addressee are recognised as yourself from the "To:"/"An:" line and skipped, the same self-exclusion that applies everywhere else.

Why didn't ListPlus turn a venue, event or headline into a contact?#

By design. Recognition only creates candidates for real people and organisations someone would plausibly do business with — a hotel, conference centre, event name, product, city, country, date or an all-caps headline is never treated as a contact, and anything unclear is left out rather than guessed.

What does "Only mentioned in the text – not a direct contact" mean?#

It means the person is only named in passing in your text — a speaker on an agenda, someone quoted in an article, a name in a newsletter's attendee list — not someone the material is actually reaching out to. The row still shows for you to review, but it never counts as a confirmed contact.

Why did this entry cost more than the usual base amount of credits?#

Hard material — a long text, a newsletter with many all-caps headline-style lines, or a thread with several "From:"/"Von:" header blocks — is read by a stronger AI model than the standard one, because picking out the right contact is harder. The base amount stays the same; only the AI cost added on top for free text goes up, and the Recognize contacts button always shows the price (an upper bound for free text) before you click.