The challenge#
For a B2B sales team, LinkedIn is by far the most important business development channel. This isn't a coincidence: decision-makers share their company news, industry insights, personal successes, and challenges here. Every single post is a window into what's on their mind — and an opportunity to engage them in a relevant way.
In B2B sales, relationship building is a long game. A cold message alone isn't enough — decision-makers receive dozens of such outreach daily, and most get ignored. What works: timely, context-based engagement. If someone posts about opening a new office, and you're among the first to congratulate with a valuable comment, that builds trust. If someone shares their challenges with a business process, and you offer a relevant solution, that's not spam — that's value.
The problem: the team would have needed to review hundreds of LinkedIn profiles daily to find these opportunities in time. This is an impossible task manually — a person can realistically review 20-30 profiles per hour, which means 2-3 hours of scrolling daily. And profiles are still missed, because LinkedIn's algorithm doesn't sort the feed based on our business criteria.
The other problem with manual monitoring is the human factor: fatigue, selective attention, bias. A sales rep tends to watch profiles they already know, and miss opportunities hidden in peripheral connections. Plus, response quality drops too: the first five profiles get creative comments, but by the twentieth, it's just a "Congrats!" emoji.
The goal was clear: automatically monitor selected profiles, identify relevant content, and provide specific suggestions on how to respond. Not just notify that someone posted — but understand what the post is about, why it matters to us, and what's worth saying.
The challenge wasn't technical but strategic: it's not enough to see the posts — we need to understand the context, intent, emotional tone, and suggest an appropriate response. A "new hire" post means something different at a potential client (expansion = potential) versus a competitor (strengthening = watchpoint). This is something that simply can't scale without AI.
Why this solution?#
LinkedIn doesn't officially support automated data collection. We used the Apify platform, which collects data from publicly available profiles and respects rate limits. We don't log in as other users, don't send automated messages, and don't collect private data.
The system monitors exclusively public posts — exactly what anyone sees when they open a given profile. The point of automation here is speed and analysis, not access.
The solution in detail#
Pulse operates in three layers: data collection, AI analysis, and a user-friendly dashboard. Each layer scales independently, meaning the system works just as reliably with 20 profiles as with 500.
Profile list management — who are we watching?
The user manages the monitored profile list on the dashboard. Adding a new profile is simple: pasting the LinkedIn URL is enough — the system automatically extracts the name, position, and company. Profiles can be organized into groups (e.g., "Potential clients," "Industry influencers," "Competitors") and assigned a priority. Grouping isn't just an organizational tool — the AI analysis also considers which group someone belongs to. A potential client's growth post receives a higher relevance score than a competitor's similar news. Each profile can also have custom context added, such as the client's industry or a brief summary of previous interactions, which the AI also uses during analysis.
Apify data collection — automatic, scheduled
The Apify scraper retrieves the latest posts from monitored profiles at regular intervals (every 4 hours by default). The n8n workflow schedules the runs, manages rate limits, and stores results in Supabase. The system employs intelligent scheduling: high-priority profiles are checked more frequently, lower-priority ones less often, optimizing resource usage.
For every collected post, we store: the text, date, number of reactions and comments, and the post type (text, image, video, share). Deduplication logic ensures the same post doesn't enter twice, and the system also tracks changes in reaction counts, providing insight into engagement dynamics.
OpenAI analysis — context-based evaluation
Every incoming post goes through a multi-stage OpenAI analysis. In the first step, the AI determines the post's basic characteristics: topic category (e.g., company news, personal success, industry trend, opinion, recruitment), emotional tone (positive, negative, neutral, mixed), and keyword extraction. In the second step, this information is cross-referenced with the profile's group, custom context, and business objectives.
The system evaluates three key dimensions:
- Topic and sentiment — What is the post about? Positive, negative, informative? The AI looks beyond the surface content to recognize underlying intent: a "challenging quarter" post may conceal a business opportunity.
- Relevance level (1-5) — How closely does it relate to the given business objective? The score considers the profile group, topic category, and timing. A 4-5 score post deserves immediate attention.
- Suggested response — A concrete text outline: congratulations, professional comment, question, or share. The suggestion matches the post's tone and the relationship level with the given profile.
The AI analysis considers the profile group and previous interactions. If someone is in the "Potential clients" group and posts about a successful project, relevance is automatically higher. The analysis also learns user preferences: if certain types of suggestions are regularly dismissed, they receive lower weight over time.
Dashboard — everything in one place
Everything is accessible through a Next.js-based dashboard with a Supabase backend. The user sees all monitored profile activity here, and the system generates a prioritized to-do list: "These are the posts worth responding to today." The dashboard is filterable by groups, relevance level, and post type, so the user can immediately focus on the most important interactions. Response suggestions can be copied and personalized with a single click, drastically reducing the time spent on each engagement. The daily overview summarizes how many new posts arrived, from which group, and what the suggested priority order is — typically reviewable in 5 minutes, something that previously took hours.
Before and after#
- 2-3 hours of daily LinkedIn scrolling
- Max 20-30 profiles reviewed daily
- Many missed opportunities and delayed reactions
- No system — whoever notices, notices
- Generic, non-personalized responses
- < 5 minutes daily review on the dashboard
- 100+ profiles continuously and automatically monitored
- Instant alerts on relevant posts
- Prioritized to-do list with AI relevance scoring
- AI-generated, context-based response suggestions
Pulse Dashboard — Daily overview
| Profile | Group | Post topic | Relevance | Suggested action |
|---|---|---|---|---|
| Peter Kovacs, CEO | Potential client | Opened new office | ⭐⭐⭐⭐⭐ | Congratulate + offer consultation |
| Anna Nagy, CTO | Industry influencer | AI implementation experience | ⭐⭐⭐⭐ | Professional comment |
| Mark Szabo, Ops | Competitor | New service launch | ⭐⭐⭐ | Monitor, no action |
| Laura Toth, HR | Potential client | Team recruitment challenges | ⭐⭐⭐⭐ | Empathy + mention AI solution |
Each row has a one-click AI response suggestion that's personalized and context-based.
Results in numbers#
| Metric | Before | After |
|---|---|---|
| LinkedIn monitoring time/day | 2-3 hours | < 5 minutes |
| Profiles monitored | 20-30 | 100+ |
| Relevant posts engaged/week | 5-10 | 30-50 |
| Response time to relevant posts | 1-2 days | < 4 hours |
| New connections/month | 3-5 | 15-20 |
The sales team initiates dozens of relevant interactions weekly that they previously would have missed entirely. Response time has dropped, response quality has improved, and the team can focus on strategy instead of scrolling. Perhaps the biggest change — one that doesn't show in the numbers — is that the team communicates more confidently, because the AI analysis provides context — they know why a given post matters, and the response suggestion provides a starting point for their personal tone.
How to apply this in your business#
A solution similar to the Pulse system can be implemented by any B2B company whose sales process is based on relationship building. The key: start small and scale gradually. Below is a concrete, week-by-week implementation plan.
Week 1: Profile list assembly. Gather the 20 most important LinkedIn profiles — potential clients, partners, industry thought leaders. Be selective: the goal isn't to monitor everyone, but to focus on strategically important connections. Group them and write a brief context for each profile (e.g., "we spoke at a conference last year, they were interested in our AI solutions").
Week 2: Activate automatic monitoring. Try the automatic monitoring — see how many relevant posts it discovers that you previously missed. Also pay attention to whether the AI relevance scoring matches your own judgment: if you frequently override it, refine the group settings and context.
Week 3: Evaluate results. Assess the concrete numbers — how many new conversations started based on the automatic monitoring? Which types of posts received the most positive engagement? This data helps you expand the profile list in week four to the segments that deliver the most business value.
Our experience: most companies want to expand the profile list by week three, because they see how many opportunities they've been leaving on the table. Another common piece of feedback is that sales team motivation increases because responding becomes routine rather than a burden — 5 minutes daily, with concrete tasks.
If you're in B2B sales, book a free consultation — we'll show you how to set up a similar system tailored to your industry.
Tech stack#
| Tool | Role |
|---|---|
| n8n | Workflow scheduling, Apify and OpenAI orchestration |
| Apify | LinkedIn profile and post scraping |
| OpenAI API | Post analysis, relevance scoring, response suggestions |
| Supabase | Database (profiles, posts, analyses) and auth |
| Next.js | Dashboard frontend, real-time updates |