Автозаполнение CRM
Каждый звонок, каждая договорённость и задача на следующий шаг попадают в CRM автоматически. Карточка остаётся полной, а у менеджеров не…
Обучать по фактам, а не по впечатлениям
Вы знаете, кто в отделе сильный, а кто проседает. Это несложно — заметно по результатам. Чего не видно — так это движения. Менеджер, у которого слабо с закрытием, стал ли он закрывать лучше или стоит на месте? Работает ли ваше обучение, и насколько?
Без этого обучение идёт на ощущениях. Вы поправляете то, что случайно услышали, и надеетесь, что дошло. А менеджеры, рядом с которыми вы не сидели, не обучаются вовсе.
Сигналы Продаж оценивают каждый звонок по навыкам, которые важны: выявление потребности, отработка возражений, дисциплина следующего шага и остальное. Каждый навык становится показателем, который можно отслеживать во времени.
«Он слабоват в закрытии» превращается в цифру. И эта цифра меняется от недели к неделе — видно, работает ли обучение, по каждому менеджеру в отделе.
Пример: Оценка закрытия и работы с возражениями сводит воедино несколько сигналов и показывает, насколько уверенно менеджер отрабатывает возражения и доводит разговор до закрытия. По ней видно, кого и чему стоит обучать и как меняется результат со временем.
Новый менеджер, который не тянет, в первые недели почти не виден. Пока слабый результат проявится, уже потрачены месяцы зарплаты и время на ввод в работу. Увидеть тренд рано — это разница между тем, чтобы вовремя поправить, и тем, чтобы заново заниматься дорогим наймом.
countryData = FileAttachment("/data/salary-by-country.csv").csv({ typed: true })
fmtMoney = (value, row) =>
new Intl.NumberFormat(row.locale, {maximumFractionDigits: 0}).format(Math.round(value)) + " " + row.sym
renderResult = (rows) => html`<div class="calc-result">
${rows.map(r => html`<div class="calc-result-row ${r.total ? 'calc-result-total' : ''}">
<span>${r.label}</span><span>${r.value}</span>
</div>`)}
</div>`
// Persist a value to a cookie shared across the site (1-year expiry).
// Used to carry calculator inputs (country, reps, calls/day) into the contact form.
setSSCookie = (name, value) => {
document.cookie = "salessignals-" + name + "=" + encodeURIComponent(value) +
";path=/;max-age=" + (60*60*24*365) + ";SameSite=Lax";
}viewof netSalary = Inputs.number({label: "Зарплата менеджера на руки, ₽/мес", value: 90000, min: 0, step: 5000})
viewof isMsp = Inputs.toggle({label: "Компания в реестре МСП", value: true})
viewof months = Inputs.range([1, 6], {label: "Месяцев, пока это заметят", value: 3, step: 1})
viewof recruitment = Inputs.number({label: "Стоимость подбора замены, ₽", value: 100000, min: 0, step: 10000})annualNet = netSalary * 12
annualGross = annualNet <= ndflNetAt1
? annualNet / 0.87
: ndflBand1 + (annualNet - ndflNetAt1) / 0.85
grossMonthly = annualGross / 12
annualContributions = {
let cumulative = 0;
let total = 0;
for (let m = 0; m < 12; m++) {
const capRemaining = Math.max(0, contribCap - cumulative);
const underCap = Math.min(grossMonthly, capRemaining);
const overCap = grossMonthly - underCap;
total += isMsp
? Math.min(underCap, mrotThreshold) * rateBase
+ Math.max(0, underCap - mrotThreshold) * rateReduced
: underCap * rateBase;
total += overCap * rateOverCap;
total += grossMonthly * rateInjury;
cumulative += grossMonthly;
}
return total;
}
loadedMonthly = (annualGross + annualContributions) / 12
monthsCost = loadedMonthly * months
totalCost = monthsCost + recruitmentrenderResult([
{label: "Обходится компании в месяц", value: fmtRub(loadedMonthly)},
{label: "Стоимость " + months + " мес. до принятия решения", value: fmtRub(monthsCost)},
{label: "Подбор замены", value: fmtRub(recruitment)},
{label: "Во что обошлось позднее решение", value: fmtRub(totalCost), total: true}
])Стоимость сотрудника считается по полной: из суммы на руки восстанавливается оклад с учётом НДФЛ, сверху — страховые взносы по ставкам 2026 года. Стоимость подбора зависит от способа найма; подставьте свою. Цифры приблизительные.
Заметить отстающего рано, по тренду в его звонках, — это разница между тем, чтобы вовремя поправить, и тем, чтобы заплатить дважды.
Вы обучаете весь отдел, а не только тех, кого случайно услышали. Вы знаете, какие навыки растут, а какие нет. Вкладывая время в обучение, вы видите отдачу, а не надеетесь, что дошло.
Понятнее всего Сигналы Продаж объясняют себя на реальных разговорах вашего отдела. Мы подключаем систему к вашей текущей телефонии — ставить ничего не нужно, для менеджеров ничего не меняется.