LinkedIn Engagement

Aggregated LinkedIn engagement patterns for contacts.

LinkedIn Engagement captures when a contact reacts to a LinkedIn post or comment — surfacing who they engage with and what topics they care about. This includes reactions on posts and reactions on comments within a post's thread.

Unlike LinkedIn Posts and LinkedIn Comments, this signal focuses on extracting relational and intent-driven signals between the person reacting and the content/author they're reacting to.

Every reaction record is enriched by our AI pipeline — the same pipeline used for LinkedIn Post signals — to extract topic tags, a summary, pain points, initiatives, technologies mentioned, and competitors mentioned from the target post. So you know not just that someone reacted, but what they reacted to, what business problems the post discusses, and which technologies and competitors are in play.

Every person and company referenced in the signal is resolved to a company LinkedIn URL and domain for matching.

📎

See real delivered dataSample Files

This signal has a single subtype — every signal represents a LinkedIn reaction event.

SignalSubtype EnumDescription
LinkedIn ReactionlinkedinReactionContact reacted to a LinkedIn post or comment (like, celebrate, etc.)

Example Signal — Reaction on a Person's Post

What a single entry looks like in a delivered signal file:

The most common case. Contact reacted to a post by an individual. The post author is resolved to their employer for company-level matching.

{
  "signal_id": "e7a3c1d9-4f2b-4a8e-9c6d-8b1f3e5a7d2c",
  "batch_id": "2026-02-05-00-00-00",
  "signal_type": "linkedin-engagement",
  "signal_subtype": "linkedinReaction",
  "association": "contact",
  "detected_at": "2026-02-05T00:52:59.890Z",
  "contact": {
    "name": "Daniel Wiener",
    "first_name": "Daniel",
    "last_name": "Wiener",
    "email": "[email protected]",    // match on email
    "job_title": "Co-Founder & CEO",
    "linkedin_url": "linkedin.com/in/daniel-wiener"  // or match on LinkedIn URL
  },
  "company": {
    "name": "Autobound",
    "domain": "autobound.ai",                 // match on domain
    "linkedin_url": "linkedin.com/company/autobound-ai",  // or match on LinkedIn URL
    "industries": ["Software Development"],
    "employee_count_low": 11,
    "employee_count_high": 50,
    "description": "AI-powered sales personalization platform..."
  },
  "data": {
    "reaction_type": "LIKE",
    "reaction_target": "post",
    "is_reshare": false,
    "engagement_date": "2026-02-05T00:52:59.890Z",
    "post_url": "https://www.linkedin.com/feed/update/urn:li:activity:7424978315704250368",
    "post_text": "Last week, the Klue team got together in Vancouver for kickoff. Any time you bring a growing company into the same room...",
    "post_content_type": "image",
    "post_date": "2026-01-29T18:00:00.000Z",
    "post_author_name": "Jason Smith",
    "post_author_headline": "CEO @ Klue | Competitive Enablement + Win-Loss",
    "post_author_linkedin_url": "https://www.linkedin.com/in/onemoresmith",
    "post_author_type": "person",
    "post_author_company_name": "Klue",
    "post_author_company_linkedin_url": "https://www.linkedin.com/company/klaboratories",
    "post_author_company_domain": "klue.com",
    "num_likes": 233,
    "num_comments": 22,
    "num_shares": 0,
    "reaction_breakdown": {
      "like": 195,
      "praise": 22,
      "empathy": 16
    },
    "tags": [
      "Leadership",
      "Company Culture",
      "Competitive Intelligence",
      "Team Building"
    ],
    "summary": "Klue CEO reflects on company kickoff in Vancouver, emphasizing creativity, decisiveness, and agility as core operating principles...",
    "pain_points": [],
    "initiatives": [
      {
        "topic": "company kickoff and strategic alignment",
        "urgency": 0.7
      }
    ],
    "technologies_mentioned": [],
    "competitors_mentioned": [],
    "source": "person_activity"
  }
}

Example — Reaction on a Company Page Post

When the post author is a company page (not an individual), post_author_type is "company" and the company fields are populated directly. post_author_headline is null.

{
  "signal_id": "d4e5f6a7-8b9c-0d1e-2f3a-b4c5d6e7f8a9",
  "batch_id": "2025-12-22-00-00-00",
  "signal_type": "linkedin-engagement",
  "signal_subtype": "linkedinReaction",
  "association": "contact",
  "detected_at": "2025-12-22T22:28:48.482Z",
  "contact": {
    "name": "Daniel Wiener",
    "first_name": "Daniel",
    "last_name": "Wiener",
    "email": "[email protected]",    // match on email
    "job_title": "Co-Founder & CEO",
    "linkedin_url": "linkedin.com/in/daniel-wiener"  // or match on LinkedIn URL
  },
  "company": {
    "name": "Autobound",
    "domain": "autobound.ai",                 // match on domain
    "linkedin_url": "linkedin.com/company/autobound-ai",  // or match on LinkedIn URL
    "industries": ["Software Development"],
    "employee_count_low": 11,
    "employee_count_high": 50,
    "description": "AI-powered sales personalization platform..."
  },
  "data": {
    "reaction_type": "LIKE",
    "reaction_target": "post",
    "is_reshare": false,
    "engagement_date": "2025-12-22T22:28:48.482Z",
    "post_url": "https://www.linkedin.com/feed/update/urn:li:activity:7408996962982711296",
    "post_text": "The future of data strategy isn't a competition. It's a collaboration. Traditional data brokers operate behind their curtain with data that goes stale...",
    "post_content_type": "article",
    "post_date": "2025-12-20T12:00:00.000Z",
    "post_article_title": "The Future of Data Collaboration: Inside 5x5",
    "post_article_url": "https://5x5data.com/the-future-of-data-collaboration-inside-5x5/",
    "post_author_name": "5x5",
    "post_author_headline": null,
    "post_author_linkedin_url": "https://www.linkedin.com/company/5x5data",
    "post_author_type": "company",
    "post_author_company_name": "5x5",
    "post_author_company_linkedin_url": "https://www.linkedin.com/company/5x5data",
    "post_author_company_domain": "5x5data.com",
    "num_likes": 4,
    "num_comments": 0,
    "num_shares": 1,
    "reaction_breakdown": {
      "like": 4
    },
    "tags": [
      "Data Strategy",
      "Data Collaboration",
      "AdTech",
      "MarTech"
    ],
    "summary": "5x5 introduces the Data Co-Op model, arguing shared intelligence eliminates data decay and inverts traditional data broker economics.",
    "pain_points": [
      {
        "topic": "data decay from traditional data brokers",
        "intensity": 0.7
      }
    ],
    "initiatives": [
      {
        "topic": "launching Data Co-Op model",
        "urgency": 0.9
      }
    ],
    "technologies_mentioned": [],
    "competitors_mentioned": [],
    "source": "person_activity"
  }
}

Example — Reaction on a Reshared Post

When someone reshares another person's or company's post, and a contact reacts to the reshare, is_reshare is true. The resharer is the post_author, and the original content creator is captured in original_post_* fields.

{
  "signal_id": "f1a2b3c4-5d6e-7f8a-9b0c-d1e2f3a4b5c6",
  "batch_id": "2025-11-20-00-00-00",
  "signal_type": "linkedin-engagement",
  "signal_subtype": "linkedinReaction",
  "association": "contact",
  "detected_at": "2025-11-20T14:09:25.292Z",
  "contact": {
    "name": "Daniel Wiener",
    "first_name": "Daniel",
    "last_name": "Wiener",
    "email": "[email protected]",    // match on email
    "job_title": "Co-Founder & CEO",
    "linkedin_url": "linkedin.com/in/daniel-wiener"  // or match on LinkedIn URL
  },
  "company": {
    "name": "Autobound",
    "domain": "autobound.ai",                 // match on domain
    "linkedin_url": "linkedin.com/company/autobound-ai",  // or match on LinkedIn URL
    "industries": ["Software Development"],
    "employee_count_low": 11,
    "employee_count_high": 50,
    "description": "AI-powered sales personalization platform..."
  },
  "data": {
    "reaction_type": "LIKE",
    "reaction_target": "post",
    "is_reshare": true,
    "engagement_date": "2025-11-20T14:09:25.292Z",
    "post_url": "https://www.linkedin.com/feed/update/urn:li:activity:7397274876555771905",
    "post_text": "5x5 is the most important foundation to support your product. Are you \"renting\" your data? Let us help you own your data destiny.",
    "post_content_type": "text",
    "post_date": "2025-11-20T12:00:00.000Z",
    "post_author_name": "Brian Perks",
    "post_author_headline": "Data Strategist, Cross Channel Marketing and Demand Expert, Product Creator.",
    "post_author_linkedin_url": "https://www.linkedin.com/in/briangperks",
    "post_author_type": "person",
    "post_author_company_name": "5x5",
    "post_author_company_linkedin_url": "https://www.linkedin.com/company/5x5data",
    "post_author_company_domain": "5x5data.com",
    "original_post_author_name": "5x5",
    "original_post_author_linkedin_url": "https://www.linkedin.com/company/5x5data",
    "original_post_author_type": "company",
    "original_post_author_company_name": "5x5",
    "original_post_author_company_linkedin_url": "https://www.linkedin.com/company/5x5data",
    "original_post_author_company_domain": "5x5data.com",
    "original_post_text": null,
    "num_likes": 12,
    "num_comments": 0,
    "num_shares": 0,
    "reaction_breakdown": {
      "like": 11,
      "empathy": 1
    },
    "tags": [
      "Data Strategy",
      "B2B Data",
      "Data Ownership"
    ],
    "summary": "Data strategist reshares 5x5's case for owning your data foundation instead of renting from traditional brokers.",
    "pain_points": [
      {
        "topic": "renting data from traditional brokers",
        "intensity": 0.8
      }
    ],
    "initiatives": [
      {
        "topic": "promoting data ownership model",
        "urgency": 0.8
      }
    ],
    "technologies_mentioned": [],
    "competitors_mentioned": [],
    "source": "person_activity"
  }
}

Example — Reaction on a Comment

When a contact likes someone's comment on a post, reaction_target is "comment". The comment author is resolved to their employer, and the parent post context is included.

{
  "signal_id": "b8c7d6e5-4a3b-2c1d-0e9f-a8b7c6d5e4f3",
  "batch_id": "2025-10-26-00-00-00",
  "signal_type": "linkedin-engagement",
  "signal_subtype": "linkedinReaction",
  "association": "contact",
  "detected_at": "2025-10-26T14:40:23.248Z",
  "contact": {
    "name": "Daniel Wiener",
    "first_name": "Daniel",
    "last_name": "Wiener",
    "email": "[email protected]",    // match on email
    "job_title": "Co-Founder & CEO",
    "linkedin_url": "linkedin.com/in/daniel-wiener"  // or match on LinkedIn URL
  },
  "company": {
    "name": "Autobound",
    "domain": "autobound.ai",                 // match on domain
    "linkedin_url": "linkedin.com/company/autobound-ai",  // or match on LinkedIn URL
    "industries": ["Software Development"],
    "employee_count_low": 11,
    "employee_count_high": 50,
    "description": "AI-powered sales personalization platform..."
  },
  "data": {
    "reaction_type": "LIKE",
    "reaction_target": "comment",
    "is_reshare": false,
    "engagement_date": "2025-10-26T14:40:23.248Z",
    "comment_text": "MCP for the win",
    "comment_url": "https://www.linkedin.com/feed/update/urn:li:ugcPost:7386864374415675393?commentUrn=urn%3Ali%3Acomment%3A%28ugcPost%3A7386864374415675393%2C7387137270455140352%29",
    "comment_author_name": "Jason Smith",
    "comment_author_headline": "CEO @ Klue | Competitive Enablement + Win-Loss",
    "comment_author_linkedin_url": "https://www.linkedin.com/in/onemoresmith",
    "comment_author_company_name": "Klue",
    "comment_author_company_linkedin_url": "https://www.linkedin.com/company/klaboratories",
    "comment_author_company_domain": "klue.com",
    "post_url": "https://www.linkedin.com/feed/update/urn:li:activity:7388222972748193792",
    "post_text": "How often do you get to have Microsoft, Salesforce and Deloitte share the stage? Only at Gong's annual conference #Celebrate2025...",
    "post_content_type": "image",
    "post_date": "2025-10-22T12:00:00.000Z",
    "post_author_name": "Eran Aloni",
    "post_author_headline": "EVP, Product Strategy and Ecosystem | Gong",
    "post_author_linkedin_url": "https://www.linkedin.com/in/eranaloni",
    "post_author_type": "person",
    "post_author_company_name": "Gong",
    "post_author_company_linkedin_url": "https://www.linkedin.com/company/gaborone",
    "post_author_company_domain": "gong.io",
    "num_likes": 309,
    "num_comments": 11,
    "num_shares": 9,
    "reaction_breakdown": {
      "like": 224,
      "praise": 59,
      "empathy": 26
    },
    "tags": [
      "Artificial Intelligence",
      "Sales Technology",
      "Partnerships",
      "MCP Protocol"
    ],
    "summary": "Gong EVP recaps Celebrate2025 panel on AI interoperability with Microsoft, Salesforce, and Deloitte...",
    "pain_points": [],
    "initiatives": [
      {
        "topic": "MCP protocol adoption for AI interoperability",
        "urgency": 0.8
      },
      {
        "topic": "Celebrate2025 conference and partner ecosystem",
        "urgency": 0.7
      }
    ],
    "technologies_mentioned": [
      {
        "name": "MCP Protocol",
        "status": "using"
      }
    ],
    "competitors_mentioned": [],
    "source": "person_activity"
  }
}

Field Reference

Standard envelope and entity fields are shared across all signals — see Schema and Resolution. The fields below are specific to this signal:

Signal-Specific Fields

The data object contains everything unique to this signal type — the intelligence extracted from the LinkedIn engagement event.

Reaction Fields

FieldTypeDescription
reaction_typestringOne of: LIKE, PRAISE, EMPATHY, INTEREST, APPRECIATION, ENTERTAINMENT, CURIOUS. The specific reaction the contact left
reaction_targetstringWhat was reacted to: "post" or "comment". Controls which context fields appear
is_resharebooleantrue if the reacted-to post is a reshare. When true, original_post_* fields are populated
engagement_datestring (ISO 8601)When the reaction actually occurred on LinkedIn. Use this for recency filtering, not detected_at
sourcestringHow we discovered this: person_activity (person-seeded) or company_post (activity-seeded)

Post Author Fields

The person or company who authored the post. When post_author_type is "person", the author's employer is resolved. When "company", the company fields mirror the page identity.

FieldTypeDescription
post_author_namestringName of the post author (person or company page name)
post_author_headlinestring | nullHeadline if author is a person; null if company page
post_author_linkedin_urlstring (URL)Author's LinkedIn profile or company page URL
post_author_typestring"person" or "company"
post_author_company_namestringEmployer name (person) or company page name (company)
post_author_company_linkedin_urlstring (URL)Employer LinkedIn URL (person) or company page URL (company)
post_author_company_domainstringEmployer domain (person) or company domain (company)

Target Post Fields

FieldTypeDescription
post_urlstring (URL)Permalink to the LinkedIn post
post_textstringPost content (may be truncated for very long posts)
post_content_typestringPost media type: text, image, video, article, document, poll
post_datestring (ISO 8601)When the post was originally published

Article Fields

Present only when post_content_type is "article". Captures the linked article metadata.

FieldTypeDescription
post_article_titlestringTitle of the linked article
post_article_urlstring (URL)URL of the linked article

Reshare Fields

Present only when is_reshare is true. The resharer is the post_author; these fields capture the original content creator.

FieldTypeDescription
original_post_author_namestringName of the original content creator
original_post_author_linkedin_urlstring (URL)LinkedIn URL of the original content creator
original_post_author_typestring"person" or "company"
original_post_author_company_namestringEmployer name (person) or company name (company)
original_post_author_company_linkedin_urlstring (URL)Employer LinkedIn URL (person) or company page URL (company)
original_post_author_company_domainstringEmployer domain (person) or company domain (company)
original_post_textstring | nullOriginal post text if available; null if not captured

Comment Context Fields

Present only when reaction_target is "comment". The comment author is resolved to their employer.

FieldTypeDescription
comment_textstringText of the comment that was reacted to
comment_urlstring (URL)Direct permalink to the comment on LinkedIn
comment_author_namestringName of the person who wrote the comment
comment_author_headlinestringHeadline / job title of the comment author
comment_author_linkedin_urlstring (URL)LinkedIn profile URL of the comment author
comment_author_company_namestringEmployer name of the comment author
comment_author_company_linkedin_urlstring (URL)Employer LinkedIn URL of the comment author
comment_author_company_domainstringEmployer domain of the comment author

Social Proof Fields

Engagement metrics on the target post at time of collection.

FieldTypeDescription
num_likesintegerTotal reactions on the post
num_commentsintegerTotal comments on the post
num_sharesintegerTotal shares of the post
reaction_breakdownobjectCount per reaction type (e.g. {"like": 195, "praise": 22, "empathy": 16})

LLM-Enriched Fields

Generated by our AI pipeline from the target post content. These are the same fields delivered on LinkedIn Post signals — the post goes through the same extraction pipeline, so every engagement signal carries the full topic analysis of the post the contact engaged with.

FieldTypeDescription
tagsarray[string]Topic tags extracted from the target post (~300 possible values, same taxonomy as LinkedIn Posts)
summarystring10–15 word summary of the target post content. Designed for display to end users
pain_pointsarray[object]Pain points expressed or implied in the post content
pain_points[].topicstringDescription of the pain point
pain_points[].intensitynumber (0–1)How strongly the pain point is expressed
initiativesarray[object]Business initiatives or projects mentioned in the post
initiatives[].topicstringDescription of the initiative
initiatives[].urgencynumber (0–1)Inferred urgency / momentum of the initiative
technologies_mentionedarray[object]Technologies, tools, or platforms referenced in the post
technologies_mentioned[].namestringName of the technology
technologies_mentioned[].statusstringRelationship: "using", "considering", "evaluating", "migrating_from", "building"
competitors_mentionedarray[object]Companies mentioned in the post that may be competitors or vendors
competitors_mentioned[].namestringCompany name

Identity Resolution

Every LinkedIn engagement signal is pre-resolved to a business contact record with a work email. All person entities in the signal — the reactor, post author, comment author, and original post author (for reshares) — are resolved against our contact database to attach structured company data.

  1. LinkedIn profile URL captured from the engagement activity — this is a deterministic, unique identifier
  2. Profile URL matched against our contact database (250M+ contacts, 75M+ companies), ingested monthly with continuous updates from our pipeline exhaust
  3. Business email, job title, and company resolved from the matched record
  4. Company firmographic data (domain, LinkedIn URL, industries, headcount) attached

Key points:

  • Business emails only. The contact.email field is a professional/work email. Our domain validation excludes generic providers (gmail.com, yahoo.com, etc.). We do not deliver personal emails.
  • Match accuracy: 99.8%. We prefer no match over a false match — if we can't resolve a profile to a business contact with high confidence, the signal is not delivered.
  • Coverage: contact.linkedin_url is populated on 90–98% of signals. contact.email is populated on 85–95%.
  • Company resolution on all entities. The _company_name, _company_linkedin_url, and _company_domain fields are resolved for every person referenced in the signal, enabling company-level matching without additional lookups.

Full matching guide with SQL examples: Resolution


Uniqueness & Deduplication

One signal per contact per post. If a contact changes their reaction type (e.g., switches from LIKE to PRAISE), only the most recent reaction is captured.

Cross-source deduplication: A reaction may appear in both person-seeded and activity-seeded collections (e.g., a tracked contact reacts to a tracked company's post). We deduplicate on contact.linkedin_url + data.post_url. The data.source field indicates which collection method discovered the record.


Use Cases

Relationship Graph Mapping

Map who is engaging with whom. When two people regularly like and comment on each other's posts — especially when they hold relevant titles at different organizations — that implies a professional relationship. Useful for identifying warm introductions, buying committees, and hidden champions.

The post_author_company_linkedin_url and comment_author_company_linkedin_url fields enable company-level graph construction directly — no secondary enrichment needed.

Example: A VP of Sales at Company A and a CTO at Company B are consistently engaging with each other's content. This suggests a pre-existing relationship that could be leveraged for account-based outreach.

Social Intent Detection

When a non-employee reacts to a company's LinkedIn content — and they're not a seller — that signals genuine interest in the company or its products. Combined with data.tags, data.technologies_mentioned, and data.initiatives, you can filter for meaningful engagement on product-related content vs. generic corporate posts. data.pain_points reveals what problems the content addresses, and data.competitors_mentioned flags competitive context.

Example: A Director of IT at a Fortune 500 company reacts to 3 posts from a cybersecurity vendor that mention specific technologies (e.g., "SIEM", "zero trust") and pain points (e.g., "alert fatigue"). That's a much stronger social intent signal than generic content engagement.

Champion Identification

Track which contacts at target accounts are most actively engaging with your company's content. High-engagement contacts are likely internal champions or advocates who can accelerate deal cycles.

Competitive Intelligence

Monitor who is engaging with your competitors' company posts. If contacts at your target accounts are actively engaging with a competitor's content, that's an early warning signal of competitive evaluation.

Timing & Delivery

  • detected_at is when we captured the reaction. Use engagement_date for when the reaction actually occurred on LinkedIn.
  • One signal per contact per post. Reaction type changes are captured as updates, not new signals.
  • Each delivery arrives in a timestamped folder. Treat all signals in a new folder as recent — no need to diff against prior deliveries.

Coverage

  • Refresh: Person-seeded every 2 weeks; company post monthly
  • Coverage: 4,000,000+ contacts monitored
  • Best for: Relationship intelligence, social intent, champion identification, competitive monitoring

Contact Sales →