Understanding Contacts and Inquiries in LeadTruffle
📝 Learn how Contacts and Inquiries work together — and why this model keeps your pipeline clean when the same person reaches out more than once.
Table of contents
- Overview
- What is a Contact?
- What is an Inquiry?
- How Contacts and Inquiries work together
- Source, Entry Point, and Channels
- The full hierarchy: Contact → Inquiry → Conversation → Message
- How deduplication works
- The Needs Review badge
- What this means for your pipeline
Overview
LeadTruffle is built around two core records: Contacts and Inquiries.
A Contact is the person — the homeowner or business — who is reaching out. A Contact is your pipeline record. Status, assignee, and notes all live here.
An Inquiry is a specific inbound event from that person — a Yelp lead, a website form submission, a phone call. One Contact can have many Inquiries over time.
This model exists to solve a real problem: the same homeowner submits a Yelp lead in March, calls in May, and submits a website form in July. In a lead-first system, that's three separate pipeline records to manage. In LeadTruffle's contact-first model, it's one Contact with three Inquiries underneath it — one pipeline record, full history intact.
What is a Contact?
A Contact is the person, household, or business that has reached out to you. It is the primary record in LeadTruffle.
👆 View your Contacts in LeadTruffle here
Everything pipeline-related lives at the Contact level:
- Status — where this person sits in your sales pipeline (New, Contacted, Quoted, Appointment Set, Nurturing, Won, Lost)
- Assignee — which team member owns this Contact
- Source — where this person originally came from, set by their first Inquiry and never overwritten (examples: Yelp, Google LSA, Thumbtack, Website, Phone)
- Activity — a summary of all key events related to this Contact
- Notes — your team's running notes on this person
- Needs Review — a flag that new activity has come in and someone should take a look

A Contact is created the first time someone reaches out. Every subsequent Inquiry from that same person attaches to the existing Contact rather than creating a new one.
Example: Sarah Mitchell submits a website form asking about a furnace replacement. LeadTruffle creates a Contact for Sarah with Status: New. Three weeks later, Sarah calls your business line. LeadTruffle recognizes her phone number and attaches a second Inquiry to her existing Contact — her status and notes stay exactly where your team left them.
What is an Inquiry?
An Inquiry is a time-bound expression of intent — the specific inbound event that brought a Contact into LeadTruffle, or brought them back.
Every time someone reaches out, a new Inquiry is created. That Inquiry captures:
- Source — where it came from (Yelp, Google LSA, Thumbtack, Website, Phone, etc.)
- Entry Point — how it entered LeadTruffle (Yelp Integration, Website Texting Widget, Phone System, Email Gateway, Custom Lead Source)
- Channels — which communication channels were used for this specific Inquiry (SMS, Email, Phone, Yelp in-app)
- Inquiry contact information — the name, phone, email, and address captured at the moment the Inquiry came in
- AI Data Collection status — whether the AI has started, is in progress on, or has completed data collection for this Inquiry
- Conversations — the message threads that happened in response to this Inquiry
An Inquiry is a historical record. It doesn't change after it's created — it's a snapshot of that specific interaction.
There is no dedicated tab today to view your Inquiries. You view Inquiries on the Contact level.
Example: Mark Crown submits a Request-a-Quote on Yelp. LeadTruffle creates an Inquiry with Source: Yelp, Entry Point: Yelp Integration, and Channels: Yelp. The AI sends an opening message. Mark replies. The AI collects his job details. All of that activity lives under this Inquiry.


How Contacts and Inquiries work together
The relationship is straightforward: one Contact, potentially many Inquiries.
| Contact | Inquiry |
|---|---|---|
What it represents | The person | A specific inbound event |
How many per person | One | One per interaction |
Pipeline status lives here | ✓ |
|
Assignee lives here | ✓ |
|
Notes live here | ✓ |
|
Source / Entry Point / Channels | ✓ (from first Inquiry, never overwritten) | ✓ (specific to this Inquiry) |
AI qualification status |
| ✓ |
Conversation history |
| ✓ |
When a new Inquiry comes in from an existing Contact, LeadTruffle does two things:
- Attaches the new Inquiry to the existing Contact record
- Triggers a Needs Review badge on the Contact so your team knows something new came in
The Contact's pipeline status does not automatically reset. Your team stays in control of the pipeline.
Source, Entry Point, and Channels
These three fields appear on both Contacts and Inquiries, but they work differently at each level.
On a Contact
- Source — taken from the first Inquiry, never overwritten. Tells you where this person originally came from.
- Entry Point — taken from the first Inquiry, never overwritten. Tells you how they originally entered LeadTruffle.
- Channels — additive across all Inquiries. If a Contact has used SMS, Email, and Phone across different Inquiries over time, all three appear here.
On an Inquiry
- Source — where this specific Inquiry came from.
- Entry Point — how this specific Inquiry entered LeadTruffle.
- Channels — which communication channels were used for this specific Inquiry only.
Example: John Smith first came in via a Yelp lead in January. His Contact shows Source: Yelp. In April, he submits a website form. His Contact Source stays Yelp — but his Channels now include both Yelp and SMS. The April Inquiry shows Source: Website and Channels: SMS on its own record.
What Source and Entry Point are not
Source and Entry Point are not the same thing. A few examples to make this clear:
Source | Entry Point | What it means |
|---|---|---|
Modernize | Custom Lead Source | A Modernize lead came in via a configured webhook |
Google LSA | Email Gateway | A Google LSA lead was forwarded into LeadTruffle via email |
Yelp | Yelp Integration | A Yelp lead came in via the native Yelp integration |
Website | Website Texting Widget | Someone submitted your website widget form |
Phone | Phone System | Someone called your LeadTruffle number directly |
The full hierarchy: Contact → Inquiry → Conversation → Message
Every piece of communication in LeadTruffle fits into this four-level structure:
- Contact → the person
- Inquiry → the inbound event that brought them in
- Conversation → a channel-specific message thread tied to that Inquiry
- Message → an individual message within that Conversation
A single Inquiry can have multiple Conversations. For example, an Inquiry might have an SMS Conversation and a separate Email Conversation — both tied to the same Inquiry, both visible in the Contact's history.
Example: Sally Jones submits a Thumbtack lead. LeadTruffle creates an Inquiry. The AI responds via SMS — that's one Conversation. Your team later sends a follow-up email — that's a second Conversation. Both live under Sally's Thumbtack Inquiry.
How deduplication works
When a new Inquiry comes in, LeadTruffle checks whether a Contact already exists for that person before creating a new one.
Deduplication priority:
- Phone number — matched first
- Email address — matched second if no phone match
If a match is found, the new Inquiry attaches to the existing Contact. If no match is found, a new Contact is created.
The Needs Review badge
The Needs Review badge appears on a Contact when new activity has come in that your team should look at. It does not change the pipeline status — it's a flag, not a status.
Needs Review triggers when:
- A new Inquiry comes in on an existing Contact
- A new submission comes in on a Won or Lost Contact (status also resets to New in this case)
Needs Review clears when any of the following happen:
- A team member updates the Contact's status
- A team member changes the assignee
- A team member clicks Mark Reviewed
What this means for your pipeline
The practical takeaway for your team:
- Work Contacts, not Inquiries. Status, assignee, and notes are all on the Contact. That's where your pipeline lives.
- Use Inquiries for context. When you open a Contact, the Inquiries tab shows you every time that person has reached out — what they asked for, what the AI collected, and what was said.
- Needs Review is your signal. When it appears, something new happened on that Contact. Check the latest Inquiry to see what came in.
- One person = one Contact. If you see the same person in your pipeline more than once, that's a deduplication issue worth flagging to support.
Need help? Contact us at support@leadtruffle.com or message the team via the chat on this article or in-app.
Updated on: 10/06/2026
Thank you!