1<!doctype html> 2<html lang="en-US"> 3 4<head> 5 <meta charset="UTF-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1"> 7 <link rel="profile" href="https://gmpg.org/xfn/11"> 8 <link rel="dns-prefetch" href="//www.googletagmanager.com"> 9 <link rel="preconnect" href="https://www.googletagmanager.com"> 10 11 <!-- Google Tag Manager --> 12
12<script>
vendor: 415 bytes, lines 12-25
12 13 (function(w, d, s, l, i) { 14 w[l] = w[l] || []; 15 w[l].push({ 16 'gtm.start': new Date().getTime(), 17 event: 'gtm.js' 18 }); 19 var f = d.getElementsByTagName(s)[0], 20 j = d.createElement(s), 21 dl = l != 'dataLayer' ? '&l=' + l : ''; 22 j.async = true; 23 j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; 24 f.parentNode.insertBefore(j, f); 25 })(window, document, 'script', 'dataLayer', '
25GTM-KCNLK7F
vendor: 5 bytes, lines 25-26
25'); 26
26</script>
26 27 <!-- End Google Tag Manager --> 28 29 <!-- Lucky Orange --> 30
30<script async defer src="https://tools.luckyorange.com/core/lo.js?site-id=48de4e40"></script>
30 31 <!-- End Lucky Orange --> 32 33 <!-- Google tag (gtag.js) -->
vendor: 65 bytes, lines 33-34
33 34 <script async src="https://www.googletagmanager.com/gtag/js?id=
34G-SG28PCCKM3
vendor: 13 bytes, lines 34-35
34"></script> 35
35<script> 36
vendor: 133 bytes, lines 36-39
36window.dataLayer = window.dataLayer || []; 37 function gtag(){dataLayer.push(arguments);} 38 gtag('js', new Date()); 39 gtag('config', '
39G-SG28PCCKM3
vendor: 5 bytes, lines 39-40
39'); 40
40</script>
40 41 <!-- End Google tag (gtag.js) --> 42 43
43<script> 44 (function (k, i, x, ie, is, good) { 45 k.visitorGlobalObjectAlias = ie; 46 k[k.visitorGlobalObjectAlias] = k[k.visitorGlobalObjectAlias] || function () { 47 (k[k.visitorGlobalObjectAlias].q = k[k.visitorGlobalObjectAlias].q || []).push(arguments) 48 }; 49 k[k.visitorGlobalObjectAlias].l = (new Date).getTime(); 50 is = i.createElement("script"); 51 is.src = x; 52 is.async = true; 53 is.id = 'kmtgScript'; 54 is.setAttribute('account', 'b10179da21e689bca18ce2702c9e9350'); 55 good = i.getElementsByTagName("script")[0]; 56 good.parentNode.insertBefore(is, good); 57 58 })(window, document, location.origin + "/wp-content/themes/jupiterx/kixieCdn.js", "kmtg"); 59 </script>
59 60
60<script> 61(function() { 62 if (window.__kixieAttrInit) { return; } 63 window.__kixieAttrInit = true; 64 65 // ===== 1. Capture and store UTMs and gclid sitewide ===== 66 var urlParams = new URLSearchParams(window.location.search); 67 var allParams = [ 68 'utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 69 'utm_partner', 'utm_partnerkey', 'gclid' 70 ]; 71 72 var utmParams = {}; 73 try { 74 utmParams = JSON.parse(sessionStorage.getItem('utmParams') || '{}') || {}; 75 } catch (e) { 76 utmParams = {}; 77 } 78 79 var newData = false; 80 allParams.forEach(function (param) { 81 var value = urlParams.get(param); 82 if (value) { 83 utmParams[param] = value; 84 newData = true; 85 } 86 }); 87 88 if (newData) { 89 try { 90 sessionStorage.setItem('utmParams', JSON.stringify(utmParams)); 91 } catch (e) { 92 // Ignore sessionStorage write errors (private mode, quota). 93 } 94 } 95 96 // ===== 2. Enrich Calendly embeds with campaign data + the HubSpot cookie ===== 97 // The demo pages ship Calendly's stock snippet: <div class="calendly-inline-widget" 98 // data-url="..."></div>. Calendly's widget.js already forwards utm_* from the page 99 // URL, but never the HubSpot tracking cookie, and it cannot see UTMs captured on an 100 // earlier page in the session. We rewrite data-url before widget.js initialises so 101 // both ride along into the booking record. 102 var CAL_SELECTOR = '.calendly-inline-widget[data-url]'; 103 104 function hubspotUtk() { 105 var m = document.cookie.match(/(?:^|;\s*)hubspotutk=([^;]+)/); 106 return m ? m[1] : ''; 107 } 108 109 function enrichCalendlyUrl(raw) { 110 var url; 111 try { 112 url = new URL(raw, window.location.origin); 113 } catch (e) { 114 return ''; 115 } 116 117 allParams.forEach(function (key) { 118 // A value on the current URL wins over one stored earlier in the session.
119 var value = urlParams.get(key) || utmParams[key]; 120 if (value) { 121 url.searchParams.set(key, value); 122 } 123 }); 124 125 var utk = hubspotUtk(); 126 if (utk) { 127 url.searchParams.set('salesforce_uuid', utk); 128 } 129 130 return url.toString(); 131 } 132 133 function patchWidget(el) { 134 if (!el || el.getAttribute('data-kixie-enriched') === '1') { 135 return; 136 } 137 var raw = el.getAttribute('data-url'); 138 if (!raw) { 139 return; 140 } 141 var next = enrichCalendlyUrl(raw); 142 if (!next) { 143 return; 144 } 145 el.setAttribute('data-url', next); 146 el.setAttribute('data-kixie-enriched', '1'); 147 } 148 149 function patchAll() { 150 var nodes = document.querySelectorAll(CAL_SELECTOR); 151 for (var i = 0; i < nodes.length; i++) { 152 patchWidget(nodes[i]); 153 } 154 } 155 156 // Fast path: patch the node the instant it is parsed, which happens before 157 // Calendly's async widget.js runs. 158 patchAll(); 159 160 var observer = null; 161 if (typeof MutationObserver === 'function') { 162 observer = new MutationObserver(patchAll); 163 observer.observe(document.documentElement, { childList: true, subtree: true }); 164 } 165 166 document.addEventListener('DOMContentLoaded', patchAll); 167 168 window.addEventListener('load', function () { 169 patchAll(); 170 if (observer) { 171 observer.disconnect(); 172 } 173 174 // Fallback: if Calendly won the race and rendered without our params, re-initialise. 175 var nodes = document.querySelectorAll(CAL_SELECTOR); 176 for (var i = 0; i < nodes.length; i++) { 177 var el = nodes[i]; 178 var want = el.getAttribute('data-url') || ''; 179 var frame = el.querySelector('iframe'); 180 if (!frame || want.indexOf('salesforce_uuid=') === -1) { 181 continue; 182 } 183 if (frame.src.indexOf('salesforce_uuid=') !== -1) { 184 continue; 185 } 186 if (window.Calendly && typeof window.Calendly.initInlineWidget === 'function') { 187 el.innerHTML = ''; 188 window.Calendly.initInlineWidget({ url: want, parentElement: el }); 189 } 190 } 191 }); 192})(); 193</script>
193 194
194<script> 195(function () { 196 // ===== Demo booking -> HubSpot attribution ===== 197 // Calendly redirects completed bookings to /demo-thank-you/ with the invitee details 198 // on the query string. That is the only point in the demo flow where we hold BOTH the 199 // invitee's email AND the hubspotutk cookie, which is what HubSpot needs in order to 200 // attach the browsing session. Without this, demo contacts are created by the Calendly 201 // Zap through the CRM API and permanently read Original Traffic Source = OFFLINE. 202 if (window.location.pathname.indexOf('/demo-thank-you') !== 0) { 203 return; 204 } 205 206 var q; 207 try { 208 q = new URLSearchParams(window.location.search || ''); 209 } catch (e) { 210 return; 211 } 212 213 var email = String(q.get('invitee_email') || '').trim(); 214 if (!email) { 215 return; 216 } 217 218 // Fire once per booking, so a refresh does not resubmit. 219 var onceKey = 'kixieDemoAttr:' + (q.get('invitee_uuid') || email); 220 try { 221 if (sessionStorage.getItem(onceKey)) { 222 return; 223 } 224 } catch (e) { 225 // sessionStorage unavailable; accept the small risk of a duplicate. 226 } 227 228 var full = String(q.get('invitee_full_name') || '').trim(); 229 var parts = full ? full.split(/\s+/) : []; 230 var first = String(q.get('invitee_first_name') || '').trim() || parts[0] || ''; 231 var last = String(q.get('invitee_last_name') || '').trim() || parts.slice(1).join(' '); 232 233 // Prefer the live cookie; fall back to the value Calendly echoed back. 234 var hutkMatch = document.cookie.match(/(?:^|;\s*)hubspotutk=([^;]+)/); 235 var hutk = hutkMatch ? hutkMatch[1] : String(q.get('salesforce_uuid') || '').trim(); 236 237 var fields = [{ name: 'email', value: email }]; 238 if (first) { fields.push({ name: 'firstname', value: first }); } 239 if (last) { fields.push({ name: 'lastname', value: last }); } 240 241 // text_reminder_number is a dedicated Calendly param. The answer_N params are NOT used 242 // here: their order is per-event-type, so answer_2 is not reliably the same question 243 // across /demo1/../demo5/. Add them only once that mapping has been confirmed per type. 244 var phone = String(q.get('text_reminder_number') || '').trim(); 245 if (phone) { fields.push({ name: 'phone', value: phone }); } 246 247 // Keep campaign params on pageUri so HubSpot can read them, but strip the invitee PII 248 // that Calendly puts in this URL rather than handing it back for storage. 249 var safeUri = window.location.origin + window.location.pathname; 250 var utmKeys = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content']; 251 var carried = []; 252 utmKeys.forEach(function (k) { 253 var v = String(q.get(k) || '').trim(); 254 if (v) { carried.push(encodeURIComponent(k) + '=' + encodeURIComponent(v)); } 255 }); 256 if (carried.length) { safeUri += '?' + carried.join('&'); } 257 258 var context = { pageUri: safeUri, pageName: document.title }; 259 if (hutk) { context.hutk = hutk; } 260 261 fetch('https://api.hsforms.com/submissions/v3/integration/submit/20564323/ab293c27-aa90-4ad9-b223-2ba3c18f0f7d', { 262 method: 'POST', 263 headers: { 'Content-Type': 'application/json' }, 264 body: JSON.stringify({ fields: fields, context: context }) 265 }) 266 .then(function (response) { 267 if (response.ok) { 268 try { sessionStorage.setItem(onceKey, '1'); } catch (e) {} 269 return; 270 } 271 return response.text().then(function (body) { 272 console.warn('Demo attribution submission failed', response.status, body); 273 }); 274 }) 275 .catch(function () { return null; }); 276})(); 277</script>
277 278 <title>Sales Blog With AI, Calling, and CRM Playbooks</title> 279<meta name='robots' content='max-image-preview:large' /> 280<meta name="description" content="Read Kixie's sales blog for practical insights on AI, calling, texting, CRM workflows, and faster lead follow-up." /> 281<meta property="og:description" content="Read Kixie's sales blog for practical insights on AI, calling, texting, CRM workflows, and faster lead follow-up." /> 282<meta property="og:title" content="Sales Blog With AI, Calling, and CRM Playbooks" /> 283<meta property="og:type" content="article" /> 284<meta property="og:url" content="https://www.kixie.com/sales-blog/" /> 285<meta property="og:site_name" content="" /> 286 287<!-- Kixie Custom Schema -->
288<script type="application/ld+json">{"@context":"https:\/\/schema.org","@graph":[{"@type":"Organization","@id":"https:\/\/www.kixie.com\/#organization","name":"Kixie","url":"https:\/\/www.kixie.com\/","logo":{"@type":"ImageObject","url":"https:\/\/www.kixie.com\/assets\/img\/kixie-logo-dark3.png"},"sameAs":["https:\/\/www.g2.com\/products\/kixie-powercall-sms\/reviews","https:\/\/www.getapp.com\/it-communications-software\/a\/kixie\/reviews\/","https:\/\/www.capterra.com\/p\/135636\/Kixie-PowerCall\/reviews\/","https:\/\/chromewebstore.google.com\/detail\/kixie-powercall\/bmdpeakaalmaaflnkckhjcojpemlkjig\/reviews"]},{"@type":"WebPage","@id":"https:\/\/www.kixie.com\/sales-blog\/","url":"https:\/\/www.kixie.com\/sales-blog\/","name":"Sales Blog","description":"How To Boost Sales Performance With Conversation Intelligence Sales teams that rely on phone calls and video meetings to nurture...","isPartOf":{"@type":"WebSite","@id":"https:\/\/www.kixie.com\/#website"}}]}</script>
288 289<link rel='dns-prefetch' href='//fonts.googleapis.com' /> 290 291<!-- Kixie Site Identity Schema -->
292<script type="application/ld+json">{"@context":"https:\/\/schema.org","@graph":[{"@type":"Organization","@id":"https:\/\/www.kixie.com\/#organization","name":"Kixie","url":"https:\/\/www.kixie.com\/","description":"The AI-powered communications platform for modern revenue teams.","logo":{"@type":"ImageObject","@id":"https:\/\/www.kixie.com\/#logo","url":"https:\/\/www.kixie.com\/wp-content\/uploads\/2026\/02\/Kixie-Logo-Light.png"},"sameAs":["https:\/\/www.linkedin.com\/company\/kixie\/","https:\/\/www.youtube.com\/@getKixie","https:\/\/www.instagram.com\/getkixie\/","https:\/\/www.tiktok.com\/@getkixie","https:\/\/www.facebook.com\/kixieweb","https:\/\/x.com\/getkixie"],"contactPoint":[{"@type":"ContactPoint","contactType":"sales","telephone":"+1-855-484-2053"},{"@type":"ContactPoint","contactType":"customer support","email":"[email protected]","url":"https:\/\/support.kixie.com\/hc\/en-us"}]},{"@type":"WebSite","@id":"https:\/\/www.kixie.com\/#website","url":"https:\/\/www.kixie.com\/","name":"Kixie","publisher":{"@id":"https:\/\/www.kixie.com\/#organization"},"inLanguage":"en-US"}]}</script>
292 293<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.kixie.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.kixie.com%2Fsales-blog%2F" /> 294<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.kixie.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.kixie.com%2Fsales-blog%2F&format=xml" /> 295<style id="wp-img-auto-sizes-contain-inline-css"> 296img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 297/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 298</style> 299<style id="wp-emoji-styles-inline-css"> 300 301 img.wp-smiley, img.emoji { 302 display: inline !important; 303 border: none !important; 304 box-shadow: none !important; 305 height: 1em !important; 306 width: 1em !important; 307 margin: 0 0.07em !important; 308 vertical-align: -0.1em !important; 309 background: none !important; 310 padding: 0 !important; 311 } 312/*# sourceURL=wp-emoji-styles-inline-css */ 313</style> 314<style id="wp-block-library-inline-css"> 315/** 316 * Colors 317 */ 318/** 319 * Typography 320 */ 321/** 322 * SCSS Variables. 323 * 324 * Please use variables from this sheet to ensure consistency across the UI. 325 * Don't add to this sheet unless you're pretty sure the value will be reused in many places. 326 * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. 327 */ 328/** 329 * Fonts & basic variables. 330 */ 331/** 332 * Typography 333 */ 334/** 335 * Grid System. 336 * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ 337 */ 338/** 339 * Radius scale. 340 */ 341/** 342 * Elevation scale. 343 */ 344/** 345 * Dimensions. 346 */ 347/** 348 * Mobile specific styles 349 */ 350/** 351 * Editor styles. 352 */ 353/** 354 * Block & Editor UI. 355 */ 356/** 357 * Block paddings. 358 */ 359/** 360 * React Native specific. 361 * These variables do not appear to be used anywhere else. 362 */ 363/** 364 * Breakpoints & Media Queries 365 */ 366/** 367* Converts a hex value into the rgb equivalent. 368* 369* @param {string} hex - the hexadecimal value to convert 370* @return {string} comma separated rgb values 371*/ 372/** 373 * Long content fade mixin 374 * 375 * Creates a fading overlay to signify that the content is longer 376 * than the space allows. 377 */ 378/** 379 * Breakpoint mixins 380 */ 381/** 382 * Focus styles. 383 */ 384/** 385 * Applies editor left position to the selector passed as argument 386 */ 387/** 388 * Styles that are reused verbatim in a few places 389 */ 390/** 391 * Allows users to opt-out of animations via OS-level preferences. 392 */ 393/** 394 * Reset default styles for JavaScript UI based pages. 395 * This is a WP-admin agnostic reset 396 */ 397/** 398 * Reset the WP Admin page styles for Gutenberg-like pages. 399 */ 400/** 401 * Creates a checkerboard pattern background to indicate transparency. 402 * @param {String} $size - The size of the squares in the checkerboard pattern. Default is 12px. 403 */ 404:root { 405 --wp-block-synced-color: #7a00df; 406 --wp-block-synced-color--rgb: 122, 0, 223; 407 --wp-bound-block-color: var(--wp-block-synced-color); 408 --wp-editor-canvas-background: #ddd; 409 --wp-admin-theme-color: #007cba; 410 --wp-admin-theme-color--rgb: 0, 124, 186; 411 --wp-admin-theme-color-darker-10: rgb(0, 107, 160.5); 412 --wp-admin-theme-color-darker-10--rgb: 0, 107, 160.5; 413 --wp-admin-theme-color-darker-20: #005a87; 414 --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; 415 --wp-admin-border-width-focus: 2px; 416} 417@media (min-resolution: 192dpi) { 418 :root { 419 --wp-admin-border-width-focus: 1.5px; 420 } 421} 422 423/** 424 * Element styles. 425 */ 426.wp-element-button { 427 cursor: pointer; 428} 429 430:root .has-very-light-gray-background-color { 431 background-color: #eee; 432} 433:root .has-very-dark-gray-background-color { 434 background-color: #313131; 435} 436:root .has-very-light-gray-color { 437 color: #eee; 438} 439:root .has-very-dark-gray-color { 440 color: #313131; 441} 442:root { 443 /* stylelint-disable @stylistic/function-comma-space-after -- We can not use spacing because of WP multi site kses rule. */ 444} 445:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background { 446 background: linear-gradient(135deg, rgb(0, 208, 132) 0%, rgb(6, 147, 227) 100%); 447} 448:root .has-purple-crush-gradient-background { 449 background: linear-gradient(135deg, rgb(52, 226, 228) 0%, rgb(71, 33, 251) 50%, rgb(171, 29, 254) 100%); 450} 451:root .has-hazy-dawn-gradient-background { 452 background: linear-gradient(135deg, rgb(250, 172, 168) 0%, rgb(218, 208, 236) 100%); 453} 454:root .has-subdued-olive-gradient-background { 455 background: linear-gradient(135deg, rgb(250, 250, 225) 0%, rgb(103, 166, 113) 100%); 456} 457:root .has-atomic-cream-gradient-background { 458 background: linear-gradient(135deg, rgb(253, 215, 154) 0%, rgb(0, 74, 89) 100%); 459} 460:root .has-nightshade-gradient-background { 461 background: linear-gradient(135deg, rgb(51, 9, 104) 0%, rgb(49, 205, 207) 100%); 462} 463:root .has-midnight-gradient-background { 464 background: linear-gradient(135deg, rgb(2, 3, 129) 0%, rgb(40, 116, 252) 100%); 465} 466:root { 467 /* stylelint-enable @stylistic/function-comma-space-after */ 468 --wp--preset--font-size--normal: 16px; 469 --wp--preset--font-size--huge: 42px; 470} 471 472.has-regular-font-size { 473 font-size: 1em; 474} 475 476.has-larger-font-size { 477 font-size: 2.625em; 478} 479 480.has-normal-font-size { 481 font-size: var(--wp--preset--font-size--normal); 482} 483 484.has-huge-font-size { 485 font-size: var(--wp--preset--font-size--huge); 486} 487 488:root .has-text-align-center { 489 text-align: center; 490} 491 492:root .has-text-align-left { 493 /*rtl:ignore*/ 494 text-align: left; 495} 496 497:root .has-text-align-right { 498 /*rtl:ignore*/ 499 text-align: right; 500} 501 502.has-fit-text { 503 white-space: nowrap !important; 504} 505 506#end-resizable-editor-section { 507 display: none; 508} 509 510.aligncenter { 511 clear: both; 512} 513 514.items-justified-left { 515 justify-content: flex-start; 516} 517 518.items-justified-center { 519 justify-content: center; 520} 521 522.items-justified-right { 523 justify-content: flex-end; 524} 525 526.items-justified-space-between { 527 justify-content: space-between; 528} 529 530.screen-reader-text { 531 border: 0; 532 clip-path: inset(50%); 533 height: 1px; 534 margin: -1px; 535 overflow: hidden; 536 padding: 0; 537 position: absolute; 538 width: 1px; 539 word-wrap: normal !important; 540} 541 542.screen-reader-text:focus { 543 background-color: #ddd; 544 clip-path: none; 545 color: #444; 546 display: block; 547 font-size: 1em; 548 height: auto; 549 left: 5px; 550 line-height: normal; 551 padding: 15px 23px 14px; 552 text-decoration: none; 553 top: 5px; 554 width: auto; 555 z-index: 100000; 556} 557 558/** 559 * The following provide a simple means of applying a default border style when 560 * a user first makes a selection in the border block support panel. 561 * This prevents issues such as where the user could set a border width 562 * and see no border due there being no border style set. 563 * 564 * This is intended to be removed once intelligent defaults can be set while 565 * making border selections via the block support. 566 * 567 * See: https://github.com/WordPress/gutenberg/pull/33743 568 */ 569html :where(.has-border-color) { 570 border-style: solid; 571} 572 573html :where([style*=border-color]) { 574 border-style: solid; 575} 576 577html :where([style*=border-top-color]) { 578 border-top-style: solid; 579} 580 581html :where([style*=border-right-color]) { 582 /*rtl:ignore*/ 583 border-right-style: solid; 584} 585 586html :where([style*=border-bottom-color]) { 587 border-bottom-style: solid; 588} 589 590html :where([style*=border-left-color]) { 591 /*rtl:ignore*/ 592 border-left-style: solid; 593} 594 595html :where([style*=border-width]) { 596 border-style: solid; 597} 598 599html :where([style*=border-top-width]) { 600 border-top-style: solid; 601} 602 603html :where([style*=border-right-width]) { 604 /*rtl:ignore*/ 605 border-right-style: solid; 606} 607 608html :where([style*=border-bottom-width]) { 609 border-bottom-style: solid; 610} 611 612html :where([style*=border-left-width]) { 613 /*rtl:ignore*/ 614 border-left-style: solid; 615} 616 617/** 618 * Provide baseline responsiveness for images. 619 */ 620html :where(img[class*=wp-image-]) { 621 height: auto; 622 max-width: 100%; 623} 624 625/** 626 * Reset user agent styles for figure element margins. 627 */ 628:where(figure) { 629 margin: 0 0 1em 0; 630} 631 632html :where(.is-position-sticky) { 633 /* stylelint-disable length-zero-no-unit -- 0px is set explicitly so that it can be used in a calc value. */ 634 --wp-admin--admin-bar--position-offset: var(--wp-admin--admin-bar--height, 0px); 635 /* stylelint-enable length-zero-no-unit */ 636} 637 638@media screen and (max-width: 600px) { 639 html :where(.is-position-sticky) { 640 /* stylelint-disable length-zero-no-unit -- 0px is set explicitly so that it can be used in a calc value. */ 641 --wp-admin--admin-bar--position-offset: 0px; 642 /* stylelint-enable length-zero-no-unit */ 643 } 644} 645 646/*# sourceURL=/wp-includes/css/dist/block-library/common.css */ 647</style> 648<style id="classic-theme-styles-inline-css"> 649/** 650 * These rules are needed for backwards compatibility. 651 * They should match the button element rules in the base theme.json file. 652 */ 653.wp-block-button__link { 654 color: #ffffff; 655 background-color: #32373c; 656 border-radius: 9999px; /* 100% causes an oval, but any explicit but really high value retains the pill shape. */ 657 658 /* This needs a low specificity so it won't override the rules from the button element if defined in theme.json. */ 659 box-shadow: none; 660 text-decoration: none; 661 662 /* The extra 2px are added to size solids the same as the outline versions.*/ 663 padding: calc(0.667em + 2px) calc(1.333em + 2px); 664 665 font-size: 1.125em; 666} 667 668.wp-block-file__button { 669 background: #32373c; 670 color: #ffffff; 671 text-decoration: none; 672} 673 674/*# sourceURL=/wp-includes/css/classic-themes.css */ 675</style> 676 677<style id="global-styles-inline-css"> 678:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
6780) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
678.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 679/*# sourceURL=global-styles-inline-css */ 680</style> 681 682<link rel='stylesheet' id='kixie-theme-css' href='https://www.kixie.com/wp-content/themes/Kixie%20Theme/style.css?ver=1790714672' media='all' /> 683<style id="kixie-theme-inline-css"> 684 685/* ===== KIXIE UNIFIED UI â Buttons, Pills & H1 ===== */ 686 687/* --- H1: Force capitalize, never all-caps --- 688 WP stores some titles as ALL-CAPS text, so we must lowercase first, then capitalize. */ 689h1, 690.hero-title, 691.entry-title { 692 text-transform: capitalize !important; 693} 694 695/* For titles that are stored as ALL-CAPS in the DB, we need a JS-assisted fix 696 (CSS cannot lowercase-then-capitalize in one rule). 697 See the JS block at the bottom of this file. */ 698 699/* --- Pill / Badge: unified purple, fully rounded, font-weight 500 --- */ 700.hero-badge, 701span.hero-badge { 702 display: inline-block !important; 703 padding: 0.375rem 1rem !important; 704 font-size: 0.875rem !important; 705 font-weight: 500 !important; 706 color: hsl(262 83% 58%) !important; 707 background: hsl(262 83% 58% / 0.1) !important; 708 border-radius: 9999px !important; 709 text-transform: uppercase !important; 710 letter-spacing: 0.05em !important; 711 border: none !important; 712 line-height: 1.5 !important; 713 margin-bottom: 1rem !important; 714} 715 716/* --- BUTTON SYSTEM --- */ 717 718/* Base shared styles for all .btn buttons */ 719.btn, 720a.btn, 721button.btn { 722 display: inline-flex !important; 723 align-items: center !important; 724 justify-content: center !important; 725 font-family: 'DM Sans', system-ui, sans-serif !important; 726 font-weight: 700 !important; 727 text-decoration: none !important; 728 cursor: pointer !important; 729 transition: all 0.2s ease !important; 730 border: none !important; 731 line-height: 1.2 !important; 732 white-space: nowrap !important; 733} 734 735/* Hide ALL arrow SVGs inside .btn (except .btn-learn-more) */ 736.btn svg.lucide-arrow-right, 737.btn svg[data-lucide="arrow-right"], 738a.btn svg.lucide-arrow-right, 739a.btn svg[data-lucide="arrow-right"], 740.hero-cta-group .btn svg, 741.hero-cta-group a.btn svg { 742 display: none !important; 743} 744.btn.btn-learn-more svg, 745a.btn.btn-learn-more svg { 746 display: inline-block !important; 747} 748 749/* Size: Large */ 750.btn-lg, 751.btn.btn-lg { 752 min-height: 3rem !important; 753 padding: 0.75rem 1.75rem !important; 754 font-size: 1rem !important; 755} 756 757/* Size: XL */ 758.btn-xl, 759.btn.btn-xl { 760 min-height: 3.5rem !important; 761 padding: 0.875rem 2rem !important; 762 font-size: 1.125rem !important; 763} 764 765/* Variant: CTA (Red) â rounded except bottom-left straight */ 766.btn-cta, 767.btn.btn-cta, 768a.btn-cta, 769a.btn.btn-cta, 770.hero-cta-group .btn-cta, 771.hero-cta-group a.btn-cta { 772 background-color: hsl(0 84% 60%) !important; 773 color: #fff !important; 774 border-radius: 6px 6px 6px 0 !important; 775} 776.btn-cta:hover, 777.btn.btn-cta:hover, 778a.btn-cta:hover, 779a.btn.btn-cta:hover { 780 background-color: hsl(0 84% 53%) !important; 781 transform: translateY(-1px) !important; 782 box-shadow: 0 4px 12px hsl(0 84% 60% / 0.3) !important; 783} 784 785/* Variant: Outline â uniform rounded corners */ 786.btn-outline, 787.btn.btn-outline, 788a.btn-outline, 789a.btn.btn-outline { 790 background: transparent !important; 791 color: hsl(262 30% 18%) !important; 792 border: 2px solid hsl(262 10% 80%) !important; 793 border-radius: 6px !important; 794} 795.btn-outline:hover, 796.btn.btn-outline:hover, 797a.btn-outline:hover, 798a.btn.btn-outline:hover { 799 background: hsl(262 10% 96%) !important; 800 border-color: hsl(262 20% 70%) !important; 801 transform: translateY(-1px) !important; 802} 803 804/* Variant: Hero Primary (White solid for dark backgrounds) â uniform rounded */ 805.btn-hero-primary, 806.btn.btn-hero-primary, 807a.btn-hero-primary, 808a.btn.btn-hero-primary { 809 background: #fff !important; 810 color: hsl(262 30% 18%) !important; 811 border-radius: 6px !important; 812 border: none !important; 813} 814.btn-hero-primary:hover, 815.btn.btn-hero-primary:hover, 816a.btn-hero-primary:hover, 817a.btn.btn-hero-primary:hover { 818 background: hsl(0 0% 95%) !important; 819 transform: translateY(-1px) !important; 820 box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important; 821} 822 823/* Variant: Learn More (small white outline with arrow â the exception) */ 824.btn-learn-more, 825.btn.btn-learn-more, 826a.btn-learn-more, 827a.btn.btn-learn-more { 828 background: transparent !important; 829 color: #fff !important; 830 border: 1px solid rgba(255,255,255,0.4) !important; 831 border-radius: 6px !important; 832 padding: 0.5rem 1rem !important; 833 font-size: 0.875rem !important; 834 font-weight: 500 !important; 835 min-height: auto !important; 836} 837.btn-learn-more:hover, 838.btn.btn-learn-more:hover, 839a.btn-learn-more:hover, 840a.btn.btn-learn-more:hover { 841 background: rgba(255,255,255,0.1) !important; 842 border-color: rgba(255,255,255,0.6) !important; 843} 844.btn-learn-more svg, 845.btn.btn-learn-more svg { 846 display: inline-block !important; 847 width: 16px !important; 848 height: 16px !important; 849 margin-left: 0.25rem !important; 850} 851 852/* --- Homepage Tailwind button overrides --- */ 853.kixie-front-page a[href*="sign-up"], 854.kixie-embed-container a[href*="sign-up"] { 855 background-color: hsl(0 84% 60%) !important; 856 color: #fff !important; 857 border-radius: 6px 6px 6px 0 !important; 858 font-weight: 700 !important; 859} 860.kixie-front-page a[href*="sign-up"]:hover, 861.kixie-embed-container a[href*="sign-up"]:hover { 862 background-color: hsl(0 84% 53%) !important; 863} 864.kixie-front-page a[href*="sign-up"] svg, 865.kixie-embed-container a[href*="sign-up"] svg { 866 display: none !important; 867} 868.kixie-front-page a[href*="demo"], 869.kixie-embed-container a[href*="demo"] { 870 border-radius: 6px !important; 871} 872 873/* --- Header nav button overrides --- */ 874.kixie-nav-actions .kixie-nav-try-free, 875a.kixie-nav-try-free { 876 border-radius: 6px 6px 6px 0 !important; 877} 878 879/* ===== END KIXIE UNIFIED UI ===== */ 880/*# sourceURL=kixie-theme-inline-css */ 881</style> 882<link rel='stylesheet' id='kixie-dm-sans-css' href='https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap' media='all' /> 883<link rel='stylesheet' id='kixie-solutions-container-fix-css' href='https://www.kixie.com/wp-content/themes/Kixie%20Theme/css/kixie-solutions-container-fix.css?ver=1773889346' media='all' />
884<script id="jquery-core-js" src="https://www.kixie.com/wp-includes/js/jquery/jquery.min.js"></script>
vendor: 1 bytes, line 884
884
885<script id="jquery-migrate-js" src="https://www.kixie.com/wp-includes/js/jquery/jquery-migrate.js"></script>
885 886<link rel="https://api.w.org/" href="https://www.kixie.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.kixie.com/wp-json/wp/v2/pages/1451" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.kixie.com/xmlrpc.php?rsd" /> 887<link rel="canonical" href="https://www.kixie.com/sales-blog/" /> 888<link rel='shortlink' href='https://www.kixie.com/?p=1451' /> 889<style id="core-block-supports-inline-css"> 890/** 891 * Core styles: block-supports 892 */ 893 894/*# sourceURL=core-block-supports-inline-css */ 895</style> 896 897</head> 898 899<body class="wp-singular page-template page-template-page-sales-blog page-template-page-sales-blog-php page page-id-1451 wp-custom-logo wp-theme-material-design-google wp-child-theme-KixieTheme"> 900 901 <!-- Google Tag Manager (noscript) -->
vendor: 72 bytes, lines 901-903
901 902 <noscript> 903 <iframe src="https://www.googletagmanager.com/ns.html?id=
903GTM-KCNLK7F
vendor: 86 bytes, lines 903-905
903" height="0" width="0" style="display:none;visibility:hidden"></iframe> 904 </noscript> 905
905<!-- End Google Tag Manager (noscript) --> 906 <div id="page" class="site"> 907 <header class="kixie-site-header" role="banner"> 908 <div class="kixie-hello-bar" fetchpriority="high"> 909 </div> 910 911 <nav class="kixie-main-nav" aria-label="Primary navigation"> 912 <div class="kixie-container" fetchpriority="high"> 913 <div class="kixie-nav-inner"> 914 <div class="kixie-logo"> 915 <a href="https://www.kixie.com/" class="kixie-logo-link" rel="home" aria-label="Kixie home"> 916 <img src="https://www.kixie.com/assets/img/kixie-logo-dark3.png" 917 alt="" class="kixie-logo-image" /> 918 </a> 919 </div> 920 921 <div class="kixie-nav-desktop" role="navigation" 922 aria-label="Primary"> 923 <ul class="kixie-nav-menu kixie-nav-menu-mega"> 924 <li class="kixie-nav-item has-mega" data-dropdown-item> 925 <button type="button" class="kixie-nav-trigger" data-dropdown-trigger 926 aria-expanded="false" aria-controls="kixie-platform-menu"> 927 Platform <svg class="kixie-nav-chevron" xmlns="http://www.w3.org/2000/svg" 928 viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" 929 stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"> 930 <path d="m6 9 6 6 6-6"></path> 931 </svg> 932 </button> 933 <div id="kixie-platform-menu" class="kixie-mega-menu kixie-mega-platform" hidden> 934 <div class="kixie-mega-inner"> 935 <p class="kixie-mega-heading"> 936 Features </p> 937 <div class="kixie-mega-feature-list"> 938 <a href="/features/power-dialer/" 939 class="kixie-mega-feature-item"> 940 <span class="kixie-mega-icon" aria-hidden="true"> 941 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.9v3a2 2 0 0 1-2.2 2 19.7 19.7 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.7 19.7 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.12 1 .37 1.95.72 2.87a2 2 0 0 1-.45 2.1L8.1 9.9a16 16 0 0 0 6 6l1.2-1.2a2 2 0 0 1 2.1-.45c.92.35 1.88.6 2.86.72A2 2 0 0 1 22 16.9z"></path></svg></span> 942 <span class="kixie-mega-copy"> 943 <span class="kixie-mega-title">Power Dialer </span> 944 <span class="kixie-mega-description"> 945 Auto-dial up to 4 numbers in parallel </span> 946 </span> 947 </a> 948 <a href="/features/contact-center/" 949 class="kixie-mega-feature-item"> 950 <span class="kixie-mega-icon" aria-hidden="true"> 951 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M3 13a9 9 0 0 1 18 0"></path><path d="M21 14v4a2 2 0 0 1-2 2h-1v-7h1a2 2 0 0 1 2 2Z"></path><path d="M3 14v4a2 2 0 0 0 2 2h1v-7H5a2 2 0 0 0-2 2Z"></path></svg></span> 952 <span class="kixie-mega-copy"> 953 <span class="kixie-mega-title">Contact Center </span> 954 <span class="kixie-mega-description"> 955 Enterprise-grade call management </span> 956 </span> 957 </a> 958 <a href="/features/analytics-and-reporting/" 959 class="kixie-mega-feature-item"> 960 <span class="kixie-mega-icon" aria-hidden="true"> 961 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="20" x2="12" y2="10"></line><line x1="18" y1="20" x2="18" y2="4"></line><line x1="6" y1="20" x2="6" y2="14"></line></svg></span> 962 <span class="kixie-mega-copy"> 963 <span class="kixie-mega-title">Analytics & Reporting </span> 964 <span class="kixie-mega-description"> 965 AI-powered insights and dashboards </span> 966 </span> 967 </a> 968 <a href="/features/connectionboost/" 969 class="kixie-mega-feature-item"> 970 <span class="kixie-mega-icon" aria-hidden="true"> 971 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round">
971<path d="M13 2 3 14h7l-1 8 10-12h-7l1-8z"></path></svg></span> 972 <span class="kixie-mega-copy"> 973 <span class="kixie-mega-title">ConnectionBoost </span> 974 <span class="kixie-mega-description"> 975 Maximize connection rates </span> 976 </span> 977 </a> 978 <a href="/features/text-messaging/" 979 class="kixie-mega-feature-item"> 980 <span class="kixie-mega-icon" aria-hidden="true"> 981 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg></span> 982 <span class="kixie-mega-copy"> 983 <span class="kixie-mega-title">Business SMS </span> 984 <span class="kixie-mega-description"> 985 Automated text messaging platform </span> 986 </span> 987 </a> 988 <a href="/features/conversation-intelligence/" 989 class="kixie-mega-feature-item"> 990 <span class="kixie-mega-icon" aria-hidden="true"> 991 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M9 3a3 3 0 0 0-3 3v1a3 3 0 0 0-2 2.8A3 3 0 0 0 5 12a3 3 0 0 0 1 5.8V18a3 3 0 0 0 5 2.2A3 3 0 0 0 15 18v-.2A3 3 0 0 0 16 12a3 3 0 0 0 1-2.2A3 3 0 0 0 15 7V6a3 3 0 0 0-3-3"></path></svg></span> 992 <span class="kixie-mega-copy"> 993 <span class="kixie-mega-title">Conversation Intelligence </span> 994 <span class="kixie-mega-description"> 995 AI call analysis and coaching </span> 996 </span> 997 </a> 998 </div> 999 </div> 1000 <div class="kixie-mega-footer"> 1001 <a href="/features/" 1002 class="kixie-mega-footer-link"> 1003 All Features <span 1004 aria-hidden="true">â</span> 1005 </a> 1006 </div> 1007 </div> 1008 </li> 1009 <li class="kixie-nav-item has-mega" data-dropdown-item> 1010 <button type="button" class="kixie-nav-trigger" data-dropdown-trigger 1011 aria-expanded="false" aria-controls="kixie-solutions-menu"> 1012 Solutions <svg class="kixie-nav-chevron" xmlns="http://www.w3.org/2000/svg" 1013 viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" 1014 stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"> 1015 <path d="m6 9 6 6 6-6"></path> 1016 </svg> 1017 </button> 1018 <div id="kixie-solutions-menu" class="kixie-mega-menu kixie-mega-solutions" hidden> 1019 <div class="kixie-mega-solutions-grid"> 1020 <div class="kixie-mega-solutions-column"> 1021 <p class="kixie-mega-heading"> 1022 By Team </p> 1023 <a href="/solutions/inside-sales/" 1024 class="kixie-mega-solution-item"> 1025 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1026 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H7a4 4 0 0 0-4 4v2"></path><circle cx="9.5" cy="7" r="4"></circle><path d="M22 21v-2a4 4 0 0 0-3-3.8"></path><path d="M16 3.2a4 4 0 0 1 0 7.6"></path></svg></span> 1027 <span>Inside Sales </span> 1028 </a> 1029 <a href="/solutions/business-development/" 1030 class="kixie-mega-solution-item"> 1031 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1032 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="7" width="20" height="14" rx="2"></rect><path d="M16 7V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v2"></path><path d="M2 13h20"></path></svg></span> 1033 <sp
1033an>Business Development </span> 1034 </a> 1035 <a href="/solutions/marketing/" 1036 class="kixie-mega-solution-item"> 1037 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1038 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="m3 11 14-5v12L3 13z"></path><path d="M11 21a3 3 0 0 1-3-3v-5"></path><path d="M17 8a4.5 4.5 0 1 1 0 8"></path></svg></span> 1039 <span>Marketing </span> 1040 </a> 1041 <a href="/solutions/revenue-operations/" 1042 class="kixie-mega-solution-item"> 1043 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1044 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><polyline points="22 7 14 15 10 11 2 19"></polyline><polyline points="16 7 22 7 22 13"></polyline></svg></span> 1045 <span>Revenue Operations </span> 1046 </a> 1047 <a href="/solutions/customer-support/" 1048 class="kixie-mega-solution-item"> 1049 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1050 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M3 13a9 9 0 0 1 18 0"></path><path d="M21 14v4a2 2 0 0 1-2 2h-1v-7h1a2 2 0 0 1 2 2Z"></path><path d="M3 14v4a2 2 0 0 0 2 2h1v-7H5a2 2 0 0 0-2 2Z"></path></svg></span> 1051 <span>Customer Support </span> 1052 </a> 1053 </div> 1054 <div class="kixie-mega-solutions-column"> 1055 <p class="kixie-mega-heading"> 1056 By Role </p> 1057 <a href="/solutions/sales-development/" 1058 class="kixie-mega-solution-item"> 1059 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1060 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="m17 11 2 2 4-4"></path></svg></span> 1061 <span>Sales Development </span> 1062 </a> 1063 <a href="/solutions/account-executives/" 1064 class="kixie-mega-solution-item"> 1065 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1066 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="15" r="3"></circle><path d="M18 11.5v1"></path><path d="M18 17.5v1"></path><path d="m14.9 13.2.86.5"></path><path d="m20.24 16.3.86.5"></path><path d="m14.9 16.8.86-.5"></path><path d="m20.24 13.7.86-.5"></path><path d="M4 21v-2a4 4 0 0 1 4-4h4"></path><circle cx="9" cy="7" r="4"></circle></svg></span> 1067 <span>Account Executives </span> 1068 </a> 1069 <a href="/solutions/marketing-teams/" 1070 class="kixie-mega-solution-item"> 1071 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1072 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M18 21a8 8 0 0 0-12 0"></path><circle cx="12" cy="11" r="4"></circle><path d="M22 21a8 8 0 0 0-4-7"></path><path d="M2 21a8 8 0 0 1 4-7"></path></svg></span> 1073 <span>Marketing Teams </span> 1074 </a> 1075 <a href="/solutions/sales-managers/" 1076 class="kixie-mega-solution-item"> 1077 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1078 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="m2 8 5 5 5-8 5 8 5-5-2 12H4L2 8z"></path></svg></span> 1079 <sp
1079an>Sales Managers </span> 1080 </a> 1081 </div> 1082 <div class="kixie-mega-solutions-column"> 1083 <p class="kixie-mega-heading"> 1084 By Industry </p> 1085 <a href="/solutions/ecommerce/" 1086 class="kixie-mega-solution-item"> 1087 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1088 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><circle cx="9" cy="20" r="1"></circle><circle cx="20" cy="20" r="1"></circle><path d="M1 1h4l2.7 12.4a2 2 0 0 0 2 1.6h9.8a2 2 0 0 0 2-1.6L23 6H6"></path></svg></span> 1089 <span>eCommerce </span> 1090 </a> 1091 <a href="/solutions/financial-services/" 1092 class="kixie-mega-solution-item"> 1093 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1094 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="7" height="18"></rect><rect x="14" y="8" width="7" height="13"></rect><path d="M7 7h.01"></path><path d="M7 11h.01"></path><path d="M7 15h.01"></path><path d="M17 12h.01"></path><path d="M17 16h.01"></path></svg></span> 1095 <span>Financial Services </span> 1096 </a> 1097 <a href="/solutions/home-improvement/" 1098 class="kixie-mega-solution-item"> 1099 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1100 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="m15 12-8.5 8.5a1.4 1.4 0 0 1-2-2L13 10"></path><path d="m18 5 1.6-1.6a1.9 1.9 0 0 0-2.7-2.7L15.2 2.4"></path><path d="m12 8 4 4"></path><path d="m4 20 3-3"></path></svg></span> 1101 <span>Home Improvement </span> 1102 </a> 1103 <a href="/solutions/call-center/" 1104 class="kixie-mega-solution-item"> 1105 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1106 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.9v3a2 2 0 0 1-2.2 2 19.7 19.7 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.7 19.7 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.12 1 .37 1.95.72 2.87a2 2 0 0 1-.45 2.1L8.1 9.9a16 16 0 0 0 6 6l1.2-1.2a2 2 0 0 1 2.1-.45c.92.35 1.88.6 2.86.72A2 2 0 0 1 22 16.9z"></path><path d="M15 2a6.5 6.5 0 0 1 7 7"></path></svg></span> 1107 <span>Call Center </span> 1108 </a> 1109 <a href="/solutions/health-services/" 1110 class="kixie-mega-solution-item"> 1111 <span class="kixie-mega-solution-icon" aria-hidden="true"> 1112 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M12 21s-7-4.4-9.3-8A5.4 5.4 0 0 1 12 5.2 5.4 5.4 0 0 1 21.3 13C19 16.6 12 21 12 21z"></path></svg></span> 1113 <span>Health Services </span> 1114 </a> 1115 </div> 1116 </div> 1117 </div> 1118 </li> 1119 <li class="kixie-nav-item menu-item-has-children"> 1120 <a href="#" 1121 class="kixie-nav-link kixie-nav-link-chevron"> 1122 Partners <svg class="kixie-nav-chevron" xmlns="http://www.w3.org/2000/svg" 1123 viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" 1124 stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"> 1125 <path d="m6 9 6 6 6-6"></path> 1126 </svg> 1127 </a> 1128 <ul class="sub-menu"> 1129 <li><a href="/integrations/"> 1130 Integration Partners </a></li> 1131 <li><a href="/partners/"> 1132 Become a Partner </a></li> 1133 </ul> 1134 </li> 1135 <li class="kixie-nav-item menu-item-has-children"> 1136 <a href="#" 1137 class="kixie-nav-link kixie-nav-link-chevron"> 1138 Resources <svg class="kixie-nav-chevron" xmlns="http://www.w3.org/2000/svg"
1139 viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" 1140 stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"> 1141 <path d="m6 9 6 6 6-6"></path> 1142 </svg> 1143 </a> 1144 <ul class="sub-menu"> 1145 <li><a href="/sales-blog/"> 1146 Blog </a></li> 1147 <li><a href="/success-stories/"> 1148 Success Stories </a></li> 1149 <li><a href="https://support.kixie.com/hc/en-us"> 1150 Support </a></li> 1151 <li><a href="/developer/"> 1152 Developer </a></li> 1153 </ul> 1154 </li> 1155 <li class="kixie-nav-item"> 1156 <a href="/pricing/" 1157 class="kixie-nav-link"> 1158 Plans </a> 1159 </li> 1160 <li class="kixie-nav-item menu-item-has-children"> 1161 <a href="#" 1162 class="kixie-nav-link kixie-nav-link-chevron"> 1163 About <svg class="kixie-nav-chevron" xmlns="http://www.w3.org/2000/svg" 1164 viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" 1165 stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"> 1166 <path d="m6 9 6 6 6-6"></path> 1167 </svg> 1168 </a> 1169 <ul class="sub-menu"> 1170 <li><a href="/about/"> 1171 About Us </a></li> 1172 <li><a href="/careers/"> 1173 Careers </a></li> 1174 <li><a href="/contact/"> 1175 Contact </a></li> 1176 </ul> 1177 </li> 1178 </ul> 1179 </div> 1180 1181 <div class="kixie-cta-group"> 1182 <a href="https://www.kixie.com/login/" class="kixie-btn kixie-btn-outline"> 1183 LOG IN </a> 1184 <a href="/demo/" class="kixie-btn kixie-btn-outline"> 1185 SCHEDULE DEMO </a> 1186 <a href="/sign-up/" class="kixie-btn kixie-btn-primary"> 1187 START FREE TRIAL </a> 1188 </div> 1189 1190 <button id="mobile-menu-btn" class="kixie-mobile-toggle" aria-expanded="false" 1191 aria-controls="mobile-menu"> 1192 <span class="screen-reader-text"> 1193 Toggle navigation </span> 1194 <svg id="menu-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" 1195 stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" 1196 aria-hidden="true"> 1197 <line x1="4" x2="20" y1="12" y2="12"></line> 1198 <line x1="4" x2="20" y1="6" y2="6"></line> 1199 <line x1="4" x2="20" y1="18" y2="18"></line> 1200 </svg> 1201 <svg id="close-icon" class="is-hidden" xmlns="http://www.w3.org/2000/svg" 1202 viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 1203 stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"> 1204 <path d="M18 6 6 18"></path> 1205 <path d="m6 6 12 12"></path> 1206 </svg> 1207 </button> 1208 </div> 1209 </div> 1210 1211 <div id="mobile-menu" class="kixie-mobile-menu" hidden> 1212 <div class="kixie-container kixie-mobile-menu-inner"> 1213 <div class="kixie-mobile-section"> 1214 <p class="kixie-mobile-section-heading"> 1215 Platform </p> 1216 <a href="/features/power-dialer/" class="kixie-mobile-feature-link"> 1217 <span class="kixie-mobile-feature-icon" aria-hidden="true"> 1218 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.9v3a2 2 0 0 1-2.2 2 19.7 19.7 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.7 19.7 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.12 1 .37 1.95.72 2.87a2 2 0 0 1-.45 2.1L8.1 9.9a16 16 0 0 0 6 6l1.2-1.2a2 2 0 0 1 2.1-.45c.92.35 1.88.6 2.86.72A2 2 0 0 1 22 16.9z"></path></svg></span> 1219 <span>Power Dialer </span> 1220 </a> 1221 <a href="/features/contact-center/" class="kixie-mobile-feature-link"> 1222 <span class="kixie-mobile-feature-icon" aria-hidden="true"> 1223 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M3 13a9 9 0 0 1 18 0"></path><path d="M21 14v4a2 2 0 0 1-2 2h-1v-7h1a2 2 0 0 1 2 2Z"></path><path d="M3 14v4a2 2 0 0 0 2 2h1v-7H5a2 2 0 0 0-2 2Z"></path></svg></span>
1224 <span>Contact Center </span> 1225 </a> 1226 <a href="/features/analytics-and-reporting/" class="kixie-mobile-feature-link"> 1227 <span class="kixie-mobile-feature-icon" aria-hidden="true"> 1228 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="20" x2="12" y2="10"></line><line x1="18" y1="20" x2="18" y2="4"></line><line x1="6" y1="20" x2="6" y2="14"></line></svg></span> 1229 <span>Analytics & Reporting </span> 1230 </a> 1231 <a href="/features/connectionboost/" class="kixie-mobile-feature-link"> 1232 <span class="kixie-mobile-feature-icon" aria-hidden="true"> 1233 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2 3 14h7l-1 8 10-12h-7l1-8z"></path></svg></span> 1234 <span>ConnectionBoost </span> 1235 </a> 1236 <a href="/features/text-messaging/" class="kixie-mobile-feature-link"> 1237 <span class="kixie-mobile-feature-icon" aria-hidden="true"> 1238 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg></span> 1239 <span>Business SMS </span> 1240 </a> 1241 <a href="/features/conversation-intelligence/" class="kixie-mobile-feature-link"> 1242 <span class="kixie-mobile-feature-icon" aria-hidden="true"> 1243 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"><path d="M9 3a3 3 0 0 0-3 3v1a3 3 0 0 0-2 2.8A3 3 0 0 0 5 12a3 3 0 0 0 1 5.8V18a3 3 0 0 0 5 2.2A3 3 0 0 0 15 18v-.2A3 3 0 0 0 16 12a3 3 0 0 0 1-2.2A3 3 0 0 0 15 7V6a3 3 0 0 0-3-3"></path></svg></span> 1244 <span>Conversation Intelligence </span> 1245 </a> 1246 </div> 1247 1248 <div class="kixie-mobile-section kixie-mobile-section-divider"> 1249 <p class="kixie-mobile-section-heading"> 1250 Solutions - By Team </p> 1251 <a href="/solutions/inside-sales/" class="kixie-mobile-link"> 1252 Inside Sales </a> 1253 <a href="/solutions/business-development/" class="kixie-mobile-link"> 1254 Business Development </a> 1255 <a href="/solutions/marketing/" class="kixie-mobile-link"> 1256 Marketing </a> 1257 <a href="/solutions/revenue-operations/" class="kixie-mobile-link"> 1258 Revenue Operations </a> 1259 <a href="/solutions/customer-support/" class="kixie-mobile-link"> 1260 Customer Support </a> 1261 </div> 1262 <div class="kixie-mobile-section kixie-mobile-section-divider"> 1263 <p class="kixie-mobile-section-heading"> 1264 Solutions - By Role </p> 1265 <a href="/solutions/sales-development/" class="kixie-mobile-link"> 1266 Sales Development </a> 1267 <a href="/solutions/account-executives/" class="kixie-mobile-link"> 1268 Account Executives </a> 1269 <a href="/solutions/marketing-teams/" class="kixie-mobile-link"> 1270 Marketing Teams </a> 1271 <a href="/solutions/sales-managers/" class="kixie-mobile-link"> 1272 Sales Managers </a> 1273 </div> 1274 <div class="kixie-mobile-section kixie-mobile-section-divider"> 1275 <p class="kixie-mobile-section-heading"> 1276 Solutions - By Industry </p> 1277 <a href="/solutions/ecommerce/" class="kixie-mobile-link"> 1278 eCommerce </a> 1279 <a href="/solutions/financial-services/" class="kixie-mobile-link"> 1280 Financial Services </a> 1281 <a href="/solutions/home-improvement/" class="kixie-mobile-link"> 1282 Home Improvement </a> 1283 <a href="/solutions/call-center/" class="kixie-mobile-link"> 1284 Call Center </a> 1285 <a href="/solutions/health-services/" class="kixie-mobile-link"> 1286 Health Services </a> 1287 </div> 1288 1289 <div class="kixie-mobile-section kixie-mobile-section-divider"> 1290 <a href="https://www.kixie.com/partners/" class="kixie-mobile-link"> 1291 Partners </a> 1292 <a href="/pricing/" class="kixie-mobile-link"> 1293 Plans </a> 1294 <a href="https://www.kixie.com/about/" class="kixie-mobile-link"> 1295 About </a> 1296 </div> 1297 1298 <div class="kixie-mobile-cta" data-nosnippet> 1299 <a href="https://www.kixie.com/login/" class="kixie-btn kixie-btn-outline"> 1300 LOG IN </a> 1301 <a href="https://www.kixie.com/demo/" class="kixie-btn kixie-btn-outline"> 1302 SCHEDULE DEMO </a> 1303 <a href="https://www.kixie.com/sign-up/" class="kixie-btn kixie-btn-primary"> 1304 START FREE TRIAL </a> 1305 </div> 1306 </div>
1307 </div> 1308 </nav> 1309 </header> 1310 1311
1311<script> 1312 document.addEventListener('DOMContentLoaded', function () { 1313 const body = document.body; 1314 const desktopNav = document.querySelector('.kixie-nav-desktop'); 1315 const mobileMenuBtn = document.getElementById('mobile-menu-btn'); 1316 const mobileMenu = document.getElementById('mobile-menu'); 1317 const menuIcon = document.getElementById('menu-icon'); 1318 const closeIcon = document.getElementById('close-icon'); 1319 1320 if (desktopNav) { 1321 const desktopDropdowns = Array.from(desktopNav.querySelectorAll('[data-dropdown-item]')); 1322 1323 function closeDesktopDropdown(item) { 1324 const trigger = item.querySelector('[data-dropdown-trigger]'); 1325 const menu = item.querySelector('.kixie-mega-menu'); 1326 1327 if (trigger) { 1328 trigger.setAttribute('aria-expanded', 'false'); 1329 } 1330 if (menu) { 1331 menu.hidden = true; 1332 } 1333 1334 item.classList.remove('is-open'); 1335 } 1336 1337 function openDesktopDropdown(item) { 1338 const trigger = item.querySelector('[data-dropdown-trigger]'); 1339 const menu = item.querySelector('.kixie-mega-menu'); 1340 if (!trigger || !menu) { 1341 return; 1342 } 1343 1344 desktopDropdowns.forEach(function (dropdownItem) { 1345 if (dropdownItem !== item) { 1346 closeDesktopDropdown(dropdownItem); 1347 } 1348 }); 1349 1350 item.classList.add('is-open'); 1351 trigger.setAttribute('aria-expanded', 'true'); 1352 menu.hidden = false; 1353 } 1354 1355 function closeAllDesktopDropdowns() { 1356 desktopDropdowns.forEach(function (item) { 1357 closeDesktopDropdown(item); 1358 }); 1359 } 1360 1361 desktopDropdowns.forEach(function (item) { 1362 const trigger = item.querySelector('[data-dropdown-trigger]'); 1363 const menu = item.querySelector('.kixie-mega-menu'); 1364 if (!trigger || !menu) { 1365 return; 1366 } 1367 1368 closeDesktopDropdown(item); 1369 1370 trigger.addEventListener('click', function (event) { 1371 if (!window.matchMedia('(min-width: 1024px)').matches) { 1372 return; 1373 } 1374 1375 event.preventDefault(); 1376 if (item.classList.contains('is-open')) { 1377 closeDesktopDropdown(item); 1378 } else { 1379 openDesktopDropdown(item); 1380 } 1381 }); 1382 1383 menu.querySelectorAll('a').forEach(function (link) { 1384 link.addEventListener('click', function () { 1385 closeDesktopDropdown(item); 1386 }); 1387 }); 1388 }); 1389 1390 desktopNav.querySelectorAll('.kixie-nav-link').forEach(function (link) { 1391 link.addEventListener('click', function () { 1392 closeAllDesktopDropdowns(); 1393 }); 1394 }); 1395 1396 document.addEventListener('mousedown', function (event) { 1397 if (!window.matchMedia('(min-width: 1024px)').matches) { 1398 return; 1399 } 1400 1401 if (!desktopNav.contains(event.target)) { 1402 closeAllDesktopDropdowns(); 1403 } 1404 }); 1405 1406 document.addEventListener('keydown', function (event) { 1407 if (event.key === 'Escape') { 1408 closeAllDesktopDropdowns(); 1409 } 1410 }); 1411 1412 window.addEventListener('resize', function () { 1413 if (window.innerWidth < 1024) { 1414 closeAllDesktopDropdowns(); 1415 } 1416 }); 1417 } 1418 1419 if (!mobileMenuBtn || !mobileMenu) { 1420 return; 1421 } 1422 1423 function setIconState(isOpen) { 1424 if (menuIcon) { 1425 menuIcon.classList.toggle('is-hidden', isOpen); 1426 } 1427 if (closeIcon) { 1428 closeIcon.classList.toggle('is-hidden', !isOpen); 1429 } 1430 } 1431 1432 function openMenu() { 1433 mobileMenu.hidden = false; 1434 requestAnimationFrame(function () { 1435 mobileMenu.classList.add('is-open'); 1436 }); 1437 mobileMenuBtn.setAttribute('aria-expanded', 'true'); 1438 body.classList.add('kixie-mobile-menu-open'); 1439 setIconState(true); 1440 } 1441 1442 function closeMenu() { 1443 mobileMenu.classList.remove('is-open'); 1444 mobileMenuBtn.setAttribute('aria-expanded', 'false'); 1445 body.classList.remove('kixie-mobile-menu-open'); 1446 setIconState(false); 1447 setTimeout(function () { 1448 if (!mobileMenu.classList.contains('is-open')) { 1449 mobileMenu.hidden = true; 1450 } 1451 }, 180); 1452 } 1453 1454 mobileMenuBtn.addEventListener('click', function (event) { 1455 event.preventDefault(); 1456 if (mobileMenu.classList.contains('is-open')) { 1457 closeMenu(); 1458 } else { 1459 openMenu(); 1460 } 1461 }); 1462 1463 mobileMenu.addEventListener('click', function (event) { 1464 const link = event.target.closest('a'); 1465 if (!link) { 1466 return; 1467 } 1468 1469 closeMenu(); 1470 }); 1471 1472 window.addEventListener('resize', function () { 1473 if (window.innerWidth >= 1024 && mobileMenu.classList.contains('is-open')) { 1474 closeMenu(); 1475 } 1476 }); 1477 }); 1478 </script>
1478 1479 1480 <div id="content" class="site-content"> 1481 1482<main 1483 id="primary" 1484 class="site-main kixie-blog-index-template" 1485 data-rest-endpoint="https://www.kixie.com/wp-json/wp/v2/posts" 1486 data-per-page="10" 1487 data-total-pages="77" 1488> 1489 <div class="kixie-blog-index-wrap"> 1490 <header class="kixie-blog-index-hero"> 1491 <h1>Sales Blog</h1> 1492 <p>How To Boost Sales Performance With Conversation Intelligence Sales teams that rely on phone calls and video meetings to nurture...</p> 1493 </header> 1494 1495 <section class="kixie-blog-index-grid" aria-label="Blog posts"> 1496 <article class="kixie-blog-card"> 1497 <a href="https://www.kixie.com/sales-blog/when-prospect-calls-become-harassment/" class="kixie-blog-card-link"> 1498 <div class="kixie-blog-card-image-wrap"> 1499 <img 1500 src="https://www.kixie.com/wp-content/uploads/2026/10/when-repeated-prospect-calls-become-harassment-featured.avif" 1501 alt="When Repeated Prospect Calls Become Harassment Is Not a Number" 1502 loading="lazy" 1503 /> 1504 </div> 1505 <div class="kixie-blog-card-content"> 1506 <h2>When Repeated Prospect Calls Become Harassment Is Not a Number</h2> 1507 </div> 1508 </a> 1509 </article> 1510 <article class="kixie-blog-card"> 1511 <a href="https://www.kixie.com/sales-blog/how-to-build-a-sales-playbook/" class="kixie-blog-card-link"> 1512 <div class="kixie-blog-card-image-wrap"> 1513 <img 1514 src="https://www.kixie.com/wp-content/uploads/2026/10/how-to-build-a-sales-playbook-header-1024x683.webp" 1515 alt="How To Build A Sales Playbook Your Team Actually Follows" 1516 loading="lazy" 1517 /> 1518 </div> 1519 <div class="kixie-blog-card-content"> 1520 <h2>How To Build A Sales Playbook Your Team Actually Follows</h2> 1521 </div> 1522 </a> 1523 </article> 1524 <article class="kixie-blog-card"> 1525 <a href="https://www.kixie.com/sales-blog/should-sales-teams-record-discovery-calls/" class="kixie-blog-card-link"> 1526 <div class="kixie-blog-card-image-wrap"> 1527 <img 1528 src="https://www.kixie.com/wp-content/uploads/2026/10/should-sales-teams-record-discovery-calls-decision-1024x683.avif" 1529 alt="Should Sales Teams Record Discovery Calls? Not by Default" 1530 loading="lazy" 1531 /> 1532 </div> 1533 <div class="kixie-blog-card-content"> 1534 <h2>Should Sales Teams Record Discovery Calls? Not by Default</h2> 1535 </div> 1536 </a> 1537 </article> 1538 <article class="kixie-blog-card"> 1539 <a href="https://www.kixie.com/sales-blog/keyword-vs-semantic-search-call-transcripts/" class="kixie-blog-card-link"> 1540 <div class="kixie-blog-card-image-wrap"> 1541 <img 1542 src="https://www.kixie.com/wp-content/uploads/2026/10/keyword-vs-semantic-search-call-transcripts-featured-1024x683.avif" 1543 alt="Keyword Versus Semantic Search for Call Transcripts Is Two Jobs" 1544 loading="lazy" 1545 /> 1546 </div> 1547 <div class="kixie-blog-card-content"> 1548 <h2>Keyword Versus Semantic Search for Call Transcripts Is Two Jobs</h2> 1549 </div> 1550 </a> 1551 </article> 1552 <article class="kixie-blog-card"> 1553 <a href="https://www.kixie.com/sales-blog/daily-cold-call-benchmarks-per-sales-rep/" class="kixie-blog-card-link"> 1554 <div class="kixie-blog-card-image-wrap"> 1555 <img 1556 src="https://www.kixie.com/wp-content/uploads/2026/09/daily-cold-call-benchmarks-hero-1024x683.avif" 1557 alt="Daily Cold Call Benchmarks per Sales Rep Are Derived, Not Copied" 1558 loading="lazy" 1559 /> 1560 </div> 1561 <div class="kixie-blog-card-content"> 1562 <h2>Daily Cold Call Benchmarks per Sales Rep Are Derived, Not Copied</h2> 1563 </div> 1564 </a> 1565 </article> 1566 <article class="kixie-blog-card"> 1567 <a href="https://www.kixie.com/sales-blog/sms-vs-email-sales-campaigns/" class="kixie-blog-card-link"> 1568 <div class="kixie-blog-card-image-wrap"> 1569 <img 1570 src="https://www.kixie.com/wp-content/uploads/2026/09/sms-versus-email-sales-campaigns-consent-gates-1024x683.avif" 1571 alt="SMS Versus Email for Sales Campaigns Comes Down to Consent" 1572 loading="lazy" 1573 /> 1574 </div> 1575 <div class="kixie-blog-card-content"> 1576 <h2>
1576SMS Versus Email for Sales Campaigns Comes Down to Consent</h2> 1577 </div> 1578 </a> 1579 </article> 1580 <article class="kixie-blog-card"> 1581 <a href="https://www.kixie.com/sales-blog/resolve-conflicting-buyer-requirements/" class="kixie-blog-card-link"> 1582 <div class="kixie-blog-card-image-wrap"> 1583 <img 1584 src="https://www.kixie.com/wp-content/uploads/2026/09/resolve-conflicting-buyer-requirements-hero-1024x683.avif" 1585 alt="How to Resolve Conflicting Buyer Requirements Without a Vote" 1586 loading="lazy" 1587 /> 1588 </div> 1589 <div class="kixie-blog-card-content"> 1590 <h2>How to Resolve Conflicting Buyer Requirements Without a Vote</h2> 1591 </div> 1592 </a> 1593 </article> 1594 <article class="kixie-blog-card"> 1595 <a href="https://www.kixie.com/sales-blog/differentiate-product-sales-conversations/" class="kixie-blog-card-link"> 1596 <div class="kixie-blog-card-image-wrap"> 1597 <img 1598 src="https://www.kixie.com/wp-content/uploads/2026/09/differentiate-product-sales-conversations-hero-1024x683.avif" 1599 alt="How to Differentiate Your Product in Sales Conversations" 1600 loading="lazy" 1601 /> 1602 </div> 1603 <div class="kixie-blog-card-content"> 1604 <h2>How to Differentiate Your Product in Sales Conversations</h2> 1605 </div> 1606 </a> 1607 </article> 1608 <article class="kixie-blog-card"> 1609 <a href="https://www.kixie.com/sales-blog/remove-jargon-from-sales-calls/" class="kixie-blog-card-link"> 1610 <div class="kixie-blog-card-image-wrap"> 1611 <img 1612 src="https://www.kixie.com/wp-content/uploads/2026/09/remove-jargon-from-sales-calls-hero-1024x683.avif" 1613 alt="How to Remove Jargon From Sales Calls Without Oversimplifying" 1614 loading="lazy" 1615 /> 1616 </div> 1617 <div class="kixie-blog-card-content"> 1618 <h2>How to Remove Jargon From Sales Calls Without Oversimplifying</h2> 1619 </div> 1620 </a> 1621 </article> 1622 <article class="kixie-blog-card">
1623 <a href="https://www.kixie.com/sales-blog/sales-sms-holdout-test/" class="kixie-blog-card-link"> 1624 <div class="kixie-blog-card-image-wrap"> 1625 <img 1626 src="https://www.kixie.com/wp-content/uploads/2026/09/sales-sms-holdout-test-featured-1024x683.avif" 1627 alt="How to Run a Sales SMS Holdout Test While Reps Keep Dialing" 1628 loading="lazy" 1629 /> 1630 </div> 1631 <div class="kixie-blog-card-content"> 1632 <h2>How to Run a Sales SMS Holdout Test While Reps Keep Dialing</h2> 1633 </div> 1634 </a> 1635 </article> 1636 </section> 1637 <div class="kixie-blog-index-load-status" aria-live="polite"></div> 1638 <div class="kixie-blog-index-sentinel" aria-hidden="true"></div> 1639 </div> 1640</main> 1641
1642<script> 1643 (function () { 1644 var scope = document.querySelector('.kixie-blog-index-template'); 1645 if (!scope) { 1646 return; 1647 } 1648 1649 var grid = scope.querySelector('.kixie-blog-index-grid'); 1650 var statusEl = scope.querySelector('.kixie-blog-index-load-status'); 1651 var sentinel = scope.querySelector('.kixie-blog-index-sentinel'); 1652 if (!grid || !sentinel) { 1653 return; 1654 } 1655 1656 var restEndpoint = scope.getAttribute('data-rest-endpoint') || ''; 1657 var perPage = parseInt(scope.getAttribute('data-per-page') || '9', 10); 1658 var totalPages = parseInt(scope.getAttribute('data-total-pages') || '1', 10); 1659 if (!restEndpoint || !perPage) { 1660 return; 1661 } 1662 1663 var state = { 1664 currentPage: 1, 1665 totalPages: isNaN(totalPages) ? 1 : totalPages, 1666 isLoading: false 1667 }; 1668 1669 function escapeHtml(value) { 1670 return String(value || '') 1671 .replace(/&/g, '&') 1672 .replace(/</g, '<') 1673 .replace(/>/g, '>') 1674 .replace(/"/g, '"') 1675 .replace(/'/g, '''); 1676 } 1677 1678 function decodeHtml(value) { 1679 var parser = document.createElement('textarea'); 1680 parser.innerHTML = String(value || ''); 1681 return parser.value; 1682 } 1683 1684 function setStatus(message, isError) { 1685 if (!statusEl) { 1686 return; 1687 } 1688 statusEl.textContent = message || ''; 1689 statusEl.classList.toggle('is-error', !!isError); 1690 } 1691 1692 function getCardImage(post) { 1693 if (post && post.kixie_featured_image_url) { 1694 return String(post.kixie_featured_image_url); 1695 } 1696 var featured = post && post._embedded && post._embedded['wp:featuredmedia']; 1697 if (Array.isArray(featured) && featured[0] && featured[0].source_url) { 1698 return String(featured[0].source_url); 1699 } 1700 1701 var renderedContent = post && post.content && post.content.rendered ? String(post.content.rendered) : ''; 1702 if (renderedContent) { 1703 var parser = document.createElement('div'); 1704 parser.innerHTML = renderedContent; 1705 var firstImg = parser.querySelector('img[src]'); 1706 if (firstImg && firstImg.getAttribute('src')) { 1707 return String(firstImg.getAttribute('src')); 1708 } 1709 } 1710 1711 return ''; 1712 } 1713 1714 function createCardMarkup(post) { 1715 var rawTitle = post && post.title && post.title.rendered ? post.title.rendered : ''; 1716 var title = decodeHtml(rawTitle); 1717 var link = post && post.link ? post.link : '#'; 1718 1719 var image = getCardImage(post); 1720 var imageMarkup = image 1721 ? '<img src="' + escapeHtml(image) + '" alt="' + escapeHtml(title) + '" loading="lazy" />' 1722 : '<div class="kixie-blog-card-placeholder" aria-hidden="true"></div>'; 1723 1724 return [ 1725 '<article class="kixie-blog-card">', 1726 '<a href="' + escapeHtml(link) + '" class="kixie-blog-card-link">', 1727 '<div class="kixie-blog-card-image-wrap">', 1728 imageMarkup, 1729 '</div>', 1730 '<div class="kixie-blog-card-content">', 1731 '<h2>' + escapeHtml(title) + '</h2>', 1732 '</div>', 1733 '</a>', 1734 '</article>' 1735 ].join(''); 1736 } 1737 1738 function buildPostsUrl(page) { 1739 var url = new URL(restEndpoint, window.location.origin); 1740 url.searchParams.set('status', 'publish'); 1741 url.searchParams.set('per_page', String(perPage)); 1742 url.searchParams.set('page', String(page)); 1743 url.searchParams.set('_embed', '1'); 1744 1745 return url.toString(); 1746 } 1747 1748 function ensureEmptyState() { 1749 var hasCards = grid.querySelector('.kixie-blog-card'); 1750 var existingEmpty = grid.querySelector('.kixie-blog-index-empty'); 1751 if (hasCards) { 1752 if (existingEmpty) { 1753 existingEmpty.remove(); 1754 } 1755 return; 1756 } 1757 if (!existingEmpty) { 1758 var empty = document.createElement('p'); 1759 empty.className = 'kixie-blog-index-empty'; 1760 empty.textContent = 'No posts found.'; 1761 grid.appendChild(empty); 1762 } 1763 } 1764 1765 function fetchPage(page, replaceExisting) { 1766 if (state.isLoading) { 1767 return Promise.resolve(false); 1768 } 1769 if (page > state.totalPages) { 1770 return Promise.resolve(false); 1771 } 1772 1773 state.isLoading = true; 1774 setStatus('Loading postsâ¦', false); 1775 1776 return fetch(buildPostsUrl(page), { credentials: 'same-origin' }) 1777 .then(function (response) { 1778 if (!response.ok) { 1779 throw new Error('Failed to load posts'); 1780 } 1781 1782 var nextTotalPages = parseInt(response.headers.get('X-WP-TotalPages') || '1', 10); 1783 if (!isNaN(nextTotalPages) && nextTotalPages > 0) { 1784 state.totalPages = nextTotalPages; 1785 } 1786 1787 return response.json(); 1788 }) 1789 .then(function (posts) { 1790 var list = Array.isArray(posts) ? posts : []; 1791 if (replaceExisting) { 1792 grid.innerHTML = ''; 1793 } 1794 1795 if (list.length) { 1796 var fragment = document.createDocumentFragment(); 1797 list.forEach(function (post) { 1798 var wrapper = document.createElement('div'); 1799 wrapper.innerHTML = createCardMarkup(post); 1800 if (wrapper.firstElementChild) { 1801 fragment.appendChild(wrapper.firstElementChild); 1802 } 1803 }); 1804 grid.appendChild(fragment); 1805 } 1806 1807 state.currentPage = page; 1808 ensureEmptyState(); 1809 1810 if (state.currentPage >= state.totalPages) { 1811 setStatus('You\'ve reached the end.', false); 1812 } else { 1813 setStatus('', false); 1814 } 1815 1816 return true; 1817 }) 1818 .catch(function () { 1819 setStatus('Could not load more posts. Please try again.', true); 1820 return false;
1821 }) 1822 .finally(function () { 1823 state.isLoading = false; 1824 }); 1825 } 1826 1827 var observer = new IntersectionObserver( 1828 function (entries) { 1829 entries.forEach(function (entry) { 1830 if (!entry.isIntersecting) { 1831 return; 1832 } 1833 if (state.isLoading || state.currentPage >= state.totalPages) { 1834 return; 1835 } 1836 fetchPage(state.currentPage + 1, false); 1837 }); 1838 }, 1839 { 1840 root: null, 1841 rootMargin: '420px 0px 420px 0px', 1842 threshold: 0 1843 } 1844 ); 1845 observer.observe(sentinel); 1846 })(); 1847</script>
1847 1848 1849 1850<footer class="kixie-site-footer" role="contentinfo"> 1851 <div class="kixie-footer-container"> 1852 <div class="kixie-footer-grid"> 1853 <div class="kixie-footer-brand"> 1854 <a href="https://www.kixie.com/" class="kixie-footer-brand-link" aria-label="Kixie home"> 1855 <img src="https://www.kixie.com/wp-content/uploads/2026/02/Kixie-Logo-Light.png" 1856 alt="" class="kixie-footer-logo-image" /> 1857 </a> 1858 <p class="kixie-footer-copy"> 1859 The AI-powered communications platform for modern revenue teams. 1860 </p> 1861 <div class="kixie-footer-social" aria-label="Kixie social links"> 1862 <a href="https://www.linkedin.com/company/kixie/" target="_blank" rel="noopener noreferrer" aria-label="Kixie on LinkedIn"> 1863 <svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"> 1864 <path d="M5.8 8.4h3.1v10H5.8v-10Zm1.6-4.9c1 0 1.7.7 1.7 1.6s-.7 1.6-1.8 1.6c-1 0-1.7-.7-1.7-1.6s.7-1.6 1.8-1.6Zm4.5 4.9h3v1.4c.4-.8 1.5-1.7 3.1-1.7 3.3 0 3.9 2.2 3.9 5v5.3h-3.1v-4.7c0-1.1 0-2.6-1.6-2.6s-1.8 1.2-1.8 2.5v4.8h-3.1v-10Z" /> 1865 </svg> 1866 </a> 1867 <a href="https://www.youtube.com/@getKixie" target="_blank" rel="noopener noreferrer" aria-label="Kixie on YouTube"> 1868 <svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"> 1869 <path d="M21.6 7.2a2.8 2.8 0 0 0-2-2c-1.8-.5-8.6-.5-8.6-.5s-6.8 0-8.6.5a2.8 2.8 0 0 0-2 2A29 29 0 0 0 0 12a29 29 0 0 0 .4 4.8 2.8 2.8 0 0 0 2 2c1.8.5 8.6.5 8.6.5s6.8 0 8.6-.5a2.8 2.8 0 0 0 2-2A29 29 0 0 0 22 12a29 29 0 0 0-.4-4.8ZM8.8 15.4V8.6l5.8 3.4-5.8 3.4Z" /> 1870 </svg> 1871 </a> 1872 <a href="https://www.instagram.com/getkixie/" target="_blank" rel="noopener noreferrer" aria-label="Kixie on Instagram"> 1873 <svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"> 1874 <path d="M7.1 2.8h9.8c2.3 0 4.2 1.9 4.2 4.2v9.8c0 2.3-1.9 4.2-4.2 4.2H7.1c-2.3 0-4.2-1.9-4.2-4.2V7c0-2.3 1.9-4.2 4.2-4.2Zm0 3C6.5 5.8 6 6.3 6 7v9.8c0 .7.5 1.2 1.2 1.2h9.8c.7 0 1.2-.5 1.2-1.2V7c0-.7-.5-1.2-1.2-1.2H7.1Zm4.9 2.4a4 4 0 1 1 0 8 4 4 0 0 1 0-8Zm0 2.6a1.4 1.4 0 1 0 0 2.8 1.4 1.4 0 0 0 0-2.8Zm4.3-3.4a.9.9 0 1 1 0 1.8.9.9 0 0 1 0-1.8Z" /> 1875 </svg> 1876 </a> 1877 <a href="https://www.tiktok.com/@getkixie" target="_blank" rel="noopener noreferrer" aria-label="Kixie on TikTok"> 1878 <svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"> 1879 <path d="M14.5 2.4h3.1c.2 1.4 1 2.5 2.1 3.3.7.5 1.5.8 2.3.9v3.2c-1.6 0-3.1-.5-4.4-1.4v6.4c0 3.9-3.1 7-7 7a6.3 6.3 0 0 1-6.4-6.3c0-3.4 2.7-6.2 6.1-6.3.5 0 1 .1 1.5.2v3.4a3 3 0 0 0-1.4-.3 2.9 2.9 0 1 0 2.9 2.9V2.4Z" /> 1880 </svg> 1881 </a> 1882 <a href="https://www.facebook.com/kixieweb" target="_blank" rel="noopener noreferrer" aria-label="Kixie on Facebook"> 1883 <svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"> 1884 <path d="M14 8.2V6.6c0-.8.3-1.2 1.3-1.2h1.8V2.3c-.9-.1-1.8-.2-2.7-.2-2.8 0-4.6 1.7-4.6 4.7v2.4H6.9v3.5h2.9v8.2H14v-8.2h2.9l.5-3.5H14Z" /> 1885 </svg> 1886 </a> 1887 <a href="https://x.com/getkixie" target="_blank" rel="noopener noreferrer" aria-label="Kixie on X"> 1888 <svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"> 1889 <path d="M14.3 10.2 21.7 2h-2.8l-5.2 5.8L9.5 2H2.4l7.8 10.8L2 22h2.8l5.9-6.6 4.8 6.6h7.1l-8.3-11.8Zm-2.1 2.3-1.3-1.8L6 4.1h2.3l4 5.4 1.3 1.8 5.2 7.1h-2.3l-4.3-5.9Z" /> 1890 </svg> 1891 </a> 1892 </div> 1893 </div> 1894 1895 <div> 1896 <h4 class="kixie-footer-title">Platform</h4> 1897 <ul class="kixie-footer-list"> 1898 <li><a href="/features/power-dialer/">Power Dialer</a></li> 1899 <li><a href="/features/contact-center/">Contact Center</a></li> 1900 <li><a href="/features/analytics-and-reporting/">Analytics & Reporting</a></li> 1901 <li><a href="/features/text-messaging/">Business SMS</a></li> 1902 <li><a href="/features/connectionboost/">ConnectionBoost</a></li> 1903 <li><a href="/features/">All Features</a></li> 1904 </ul> 1905 </div> 1906 1907 <div> 1908 <h4 class="kixie-footer-title">Integrations</h4> 1909 <ul class="kixie-footer-list"> 1910 <li><a href="/integrations/hubspot/">HubSpot</a></li> 1911 <li><a href="/integrations/salesforce/">Salesforce</a></li> 1912 <li><a href="/integrations/zoho/">Zoho</a></li> 1913 <li><a href="/integrations/pipedrive/">Pipedrive</a></li> 1914 <li><a href="/integrations/zapier/">Zapier</a></li> 1915 <li><a href="/integrations/">All Integrations</a></li> 1916 </ul> 1917 </div> 1918 1919 <div> 1920 <h4 class="kixie-footer-title">Resources</h4> 1921 <ul class="kixie-footer-list"> 1922 <li><a href="https://status.kixie.com/" target="_blank" rel="noopener noreferrer">App Status</a></li> 1923 <li><a href="/sales-blog/">Blog</a></li> 1924 <li><a href="/success-stories/">Success Stories</a></li> 1925 <li><a href="/reviews/">Kixie Reviews</a></li> 1926 <li><a href="https://support.kixie.com/hc/en-us" target="_blank" rel="noopener noreferrer">Support</a></li> 1927 <li><a href="/developer/">Developer</a></li> 1928 </ul> 1929 </div> 1930 1931 <div> 1932 <h4 class="kixie-footer-title">About</h4> 1933 <ul class="kixie-footer-list"> 1934 <li><a href="/about/">About Us</a></li> 1935 <li><a href="/contact/">Contact</a></li> 1936 <li><a href="/pricing/">Plans</a></li> 1937 <li><a href="/editorial-standards/">Editorial Standards</a></li> 1938 <li><a href="/corrections-policy/">Corrections</a></li> 1939 <li><a href="/llm-info/">Facts for AI Systems</a></li> 1940 <li><a href="/security/">Security</a></li> 1941 <li><a href="/terms/">Terms</a></li> 1942 </ul> 1943 </div> 1944 </div> 1945 1946 <div class="kixie-footer-bottom"> 1947 <p>© 2026 Kixie. All rights reserved. <span class="kixie-footer-disclaimer">Images, animations and descriptions are for illustrative purposes only and may not represent currently available product features. Kixie makes no guarantees regarding the availability of any depicted features.</span></p> 1948 <div class="kixie-footer-legal"> 1949 <a href="/privacy-policy/">Privacy Policy</a> 1950 <a href="/terms/">Terms of Service</a> 1951 </div> 1952 </div> 1953 </div> 1954</footer> 1955 1956</div><!-- #content --> 1957</div><!-- #page --> 1958
1959<script type="speculationrules"> 1960{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/Kixie%20Theme/*","/wp-content/themes/material-design-google/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 1961</script>
vendor: 1 bytes, line 1961
1961
1962<script id="kixie-theme-scripts-js" src="https://www.kixie.com/wp-content/themes/Kixie%20Theme/js/custom.js?ver=1771981274"></script>
vendor: 1 bytes, line 1962
1962
1963<script id="wp-emoji-settings" type="application/json"> 1964{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"wpemoji":"https://www.kixie.com/wp-includes/js/wp-emoji.js","twemoji":"https://www.kixie.com/wp-includes/js/twemoji.js"}} 1965</script>
vendor: 1 bytes, line 1965
1965
1966<script type="module"> 1967/** 1968 * @output wp-includes/js/wp-emoji-loader.js 1969 */ 1970 1971/* eslint-env es6 */ 1972 1973// Note: This is loaded as a script module, so there is no need for an IIFE to prevent pollution of the global scope. 1974 1975/** 1976 * Emoji Settings as exported in PHP via _print_emoji_detection_script(). 1977 * @typedef WPEmojiSettings 1978 * @type {object} 1979 * @property {?object} source 1980 * @property {?string} source.concatemoji 1981 * @property {?string} source.twemoji 1982 * @property {?string} source.wpemoji 1983 */ 1984 1985const selector = 'script#wp-emoji-settings'; 1986const script = document.querySelector( selector ); 1987if ( ! ( script instanceof HTMLScriptElement ) ) { 1988 throw new Error( `Element missing: ${ selector }`); 1989} 1990const settings = /** @type {WPEmojiSettings} */ ( JSON.parse( script.text ) ); 1991 1992// For compatibility with other scripts that read from this global, in particular wp-includes/js/wp-emoji.js (source file: js/_enqueues/wp/emoji.js). 1993window._wpemojiSettings = settings; 1994 1995/** 1996 * Support tests. 1997 * @typedef SupportTests 1998 * @type {object} 1999 * @property {?boolean} flag 2000 * @property {?boolean} emoji 2001 */ 2002 2003const sessionStorageKey = 'wpEmojiSettingsSupports'; 2004const tests = [ 'flag', 'emoji' ]; 2005 2006/** 2007 * Checks whether the browser supports offloading to a Worker. 2008 * 2009 * @since 6.3.0 2010 * 2011 * @private 2012 * 2013 * @returns {boolean} 2014 */ 2015function supportsWorkerOffloading() { 2016 return ( 2017 typeof Worker !== 'undefined' && 2018 typeof OffscreenCanvas !== 'undefined' && 2019 typeof URL !== 'undefined' && 2020 URL.createObjectURL && 2021 typeof Blob !== 'undefined' 2022 ); 2023} 2024 2025/** 2026 * @typedef SessionSupportTests 2027 * @type {object} 2028 * @property {number} timestamp 2029 * @property {SupportTests} supportTests 2030 */ 2031 2032/** 2033 * Get support tests from session. 2034 * 2035 * @since 6.3.0 2036 * 2037 * @private 2038 * 2039 * @returns {?SupportTests} Support tests, or null if not set or older than 1 week. 2040 */ 2041function getSessionSupportTests() { 2042 try { 2043 /** @type {SessionSupportTests} */ 2044 const item = JSON.parse( 2045 sessionStorage.getItem( sessionStorageKey ) 2046 ); 2047 if ( 2048 typeof item === 'object' && 2049 typeof item.timestamp === 'number' && 2050 new Date().valueOf() < item.timestamp + 604800 && // Note: Number is a week in seconds. 2051 typeof item.supportTests === 'object' 2052 ) { 2053 return item.supportTests; 2054 } 2055 } catch ( e ) {} 2056 return null; 2057} 2058 2059/** 2060 * Persist the supports in session storage. 2061 * 2062 * @since 6.3.0 2063 * 2064 * @private 2065 * 2066 * @param {SupportTests} supportTests Support tests. 2067 */ 2068function setSessionSupportTests( supportTests ) { 2069 try { 2070 /** @type {SessionSupportTests} */ 2071 const item = { 2072 supportTests: supportTests, 2073 timestamp: new Date().valueOf() 2074 }; 2075 2076 sessionStorage.setItem( 2077 sessionStorageKey, 2078 JSON.stringify( item ) 2079 ); 2080 } catch ( e ) {} 2081} 2082 2083/** 2084 * Checks if two sets of Emoji characters render the same visually. 2085 * 2086 * This is used to determine if the browser is rendering an emoji with multiple data points 2087 * correctly. set1 is the emoji in the correct form, using a zero-width joiner. set2 is the emoji 2088 * in the incorrect form, using a zero-width space. If the two sets render the same, then the browser 2089 * does not support the emoji correctly. 2090 * 2091 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing 2092 * scope. Everything must be passed by parameters. 2093 * 2094 * @since 4.9.0 2095 * 2096 * @private 2097 * 2098 * @param {CanvasRenderingContext2D} context 2D Context. 2099 * @param {string} set1 Set of Emoji to test. 2100 * @param {string} set2 Set of Emoji to test. 2101 * 2102 * @return {boolean} True if the two sets render the same. 2103 */ 2104function emojiSetsRenderIdentically( context, set1, set2 ) { 2105 // Cleanup from previous test. 2106 context.clearRect( 0, 0, context.canvas.width, context.canvas.height ); 2107 context.fillText( set1, 0, 0 ); 2108 const rendered1 = new Uint32Array( 2109 context.getImageData( 2110 0, 2111 0, 2112 context.canvas.width, 2113 context.canvas.height 2114 ).data 2115 ); 2116 2117 // Cleanup from previous test. 2118 context.clearRect( 0, 0, context.canvas.width, context.canvas.height ); 2119 context.fillText( set2, 0, 0 ); 2120 const rendered2 = new Uint32Array( 2121 context.getImageData( 2122 0, 2123 0, 2124 context.canvas.width,
2125 context.canvas.height 2126 ).data 2127 ); 2128 2129 return rendered1.every( ( rendered2Data, index ) => { 2130 return rendered2Data === rendered2[ index ]; 2131 } ); 2132} 2133 2134/** 2135 * Checks if the center point of a single emoji is empty. 2136 * 2137 * This is used to determine if the browser is rendering an emoji with a single data point 2138 * correctly. The center point of an incorrectly rendered emoji will be empty. A correctly 2139 * rendered emoji will have a non-zero value at the center point. 2140 * 2141 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing 2142 * scope. Everything must be passed by parameters. 2143 * 2144 * @since 6.8.2 2145 * 2146 * @private 2147 * 2148 * @param {CanvasRenderingContext2D} context 2D Context. 2149 * @param {string} emoji Emoji to test. 2150 * 2151 * @return {boolean} True if the center point is empty. 2152 */ 2153function emojiRendersEmptyCenterPoint( context, emoji ) { 2154 // Cleanup from previous test. 2155 context.clearRect( 0, 0, context.canvas.width, context.canvas.height ); 2156 context.fillText( emoji, 0, 0 ); 2157 2158 // Test if the center point (16, 16) is empty (0,0,0,0). 2159 const centerPoint = context.getImageData(16, 16, 1, 1); 2160 for ( let i = 0; i < centerPoint.data.length; i++ ) { 2161 if ( centerPoint.data[ i ] !== 0 ) { 2162 // Stop checking the moment it's known not to be empty. 2163 return false; 2164 } 2165 } 2166 2167 return true; 2168} 2169 2170/** 2171 * Determines if the browser properly renders Emoji that Twemoji can supplement. 2172 * 2173 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing 2174 * scope. Everything must be passed by parameters. 2175 * 2176 * @since 4.2.0 2177 * 2178 * @private 2179 * 2180 * @param {CanvasRenderingContext2D} context 2D Context. 2181 * @param {string} type Whether to test for support of "flag" or "emoji". 2182 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification. 2183 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification. 2184 * 2185 * @return {boolean} True if the browser can render emoji, false if it cannot. 2186 */ 2187function browserSupportsEmoji( context, type, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) { 2188 let isIdentical; 2189 2190 switch ( type ) { 2191 case 'flag': 2192 /* 2193 * Test for Transgender flag compatibility. Added in Unicode 13. 2194 * 2195 * To test for support, we try to render it, and compare the rendering to how it would look if 2196 * the browser doesn't render it correctly (white flag emoji + transgender symbol). 2197 */ 2198 isIdentical = emojiSetsRenderIdentically( 2199 context, 2200 '\uD83C\uDFF3\uFE0F\u200D\u26A7\uFE0F', // as a zero-width joiner sequence 2201 '\uD83C\uDFF3\uFE0F\u200B\u26A7\uFE0F' // separated by a zero-width space 2202 ); 2203 2204 if ( isIdentical ) { 2205 return false; 2206 } 2207 2208 /* 2209 * Test for Sark flag compatibility. This is the least supported of the letter locale flags, 2210 * so gives us an easy test for full support. 2211 * 2212 * To test for support, we try to render it, and compare the rendering to how it would look if 2213 * the browser doesn't render it correctly ([C] + [Q]). 2214 */ 2215 isIdentical = emojiSetsRenderIdentically( 2216 context, 2217 '\uD83C\uDDE8\uD83C\uDDF6', // as the sequence of two code points 2218 '\uD83C\uDDE8\u200B\uD83C\uDDF6' // as the two code points separated by a zero-width space 2219 ); 2220 2221 if ( isIdentical ) { 2222 return false; 2223 } 2224 2225 /* 2226 * Test for English flag compatibility. England is a country in the United Kingdom, it 2227 * does not have a two letter locale code but rather a five letter sub-division code. 2228 * 2229 * To test for support, we try to render it, and compare the rendering to how it would look if 2230 * the browser doesn't render it correctly (black flag emoji + [G] + [B] + [E] + [N] + [G]). 2231 */ 2232 isIdentical = emojiSetsRenderIdentically( 2233 context, 2234 // as the flag sequence 2235 '\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67\uDB40\uDC7F', 2236 // with each code point separated by a zero-width space 2237 '\uD83C\uDFF4\u200B\uDB40\uDC67\u200B\uDB40\uDC62\u200B\uDB40\uDC65\u200B\uDB40\uDC6E\u200B\uDB40\uDC67\u200B\uDB40\uDC7F' 2238 ); 2239 2240 return ! isIdentical; 2241 case 'emoji': 2242 /* 2243 * Is there a large, hairy, humanoid mythical creature living in the browser? 2244 * 2245 * To test for Emoji 17.0 support, try to render a new emoji: Hairy Creature. 2246 * 2247 * The hairy creature emoji is a single code point emoji. Testing for browser 2248 * support required testing the center point of the emoji to see if it is empty. 2249 * 2250 * 0xD83E 0x1FAC8 (\uD83E\u1FAC8) == ð« Hairy creature. 2251 * 2252 * When updating this test, please ensure that the emoji is either a single code point 2253 * or switch to using the emojiSetsRenderIdentically function and testing with a zero-width 2254 * joiner vs a zero-width space. 2255 */ 2256 const notSupported = emojiRendersEmptyCenterPoint( context, '\uD83E\u1FAC8' ); 2257 return ! notSupported; 2258 } 2259 2260 return false;
2261} 2262 2263/** 2264 * Checks emoji support tests. 2265 * 2266 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing 2267 * scope. Everything must be passed by parameters. 2268 * 2269 * @since 6.3.0 2270 * 2271 * @private 2272 * 2273 * @param {string[]} tests Tests. 2274 * @param {Function} browserSupportsEmoji Reference to browserSupportsEmoji function, needed due to minification. 2275 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification. 2276 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification. 2277 * 2278 * @return {SupportTests} Support tests. 2279 */ 2280function testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) { 2281 let canvas; 2282 if ( 2283 typeof WorkerGlobalScope !== 'undefined' && 2284 self instanceof WorkerGlobalScope 2285 ) { 2286 canvas = new OffscreenCanvas( 300, 150 ); // Dimensions are default for HTMLCanvasElement. 2287 } else { 2288 canvas = document.createElement( 'canvas' ); 2289 } 2290 2291 const context = canvas.getContext( '2d', { willReadFrequently: true } ); 2292 2293 /* 2294 * Chrome on OS X added native emoji rendering in M41. Unfortunately, 2295 * it doesn't work when the font is bolder than 500 weight. So, we 2296 * check for bold rendering support to avoid invisible emoji in Chrome. 2297 */ 2298 context.textBaseline = 'top'; 2299 context.font = '600 32px Arial'; 2300 2301 const supports = {}; 2302 tests.forEach( ( test ) => { 2303 supports[ test ] = browserSupportsEmoji( context, test, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ); 2304 } ); 2305 return supports; 2306} 2307 2308/** 2309 * Adds a script to the head of the document. 2310 * 2311 * @ignore 2312 * 2313 * @since 4.2.0 2314 * 2315 * @param {string} src The url where the script is located. 2316 * 2317 * @return {void} 2318 */ 2319function addScript( src ) { 2320 const script = document.createElement( 'script' ); 2321 script.src = src; 2322 script.defer = true; 2323 document.head.appendChild( script ); 2324} 2325 2326settings.supports = { 2327 everything: true, 2328 everythingExceptFlag: true 2329}; 2330 2331// Obtain the emoji support from the browser, asynchronously when possible. 2332new Promise( ( resolve ) => { 2333 let supportTests = getSessionSupportTests(); 2334 if ( supportTests ) { 2335 resolve( supportTests ); 2336 return; 2337 } 2338 2339 if ( supportsWorkerOffloading() ) { 2340 try { 2341 // Note that the functions are being passed as arguments due to minification. 2342 const workerScript = 2343 'postMessage(' + 2344 testEmojiSupports.toString() + 2345 '(' + 2346 [ 2347 JSON.stringify( tests ), 2348 browserSupportsEmoji.toString(), 2349 emojiSetsRenderIdentically.toString(), 2350 emojiRendersEmptyCenterPoint.toString() 2351 ].join( ',' ) + 2352 '));'; 2353 const blob = new Blob( [ workerScript ], { 2354 type: 'text/javascript' 2355 } ); 2356 const worker = new Worker( URL.createObjectURL( blob ), { name: 'wpTestEmojiSupports' } ); 2357 worker.onmessage = ( event ) => { 2358 supportTests = event.data; 2359 setSessionSupportTests( supportTests ); 2360 worker.terminate(); 2361 resolve( supportTests ); 2362 }; 2363 return; 2364 } catch ( e ) {} 2365 } 2366 2367 supportTests = testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ); 2368 setSessionSupportTests( supportTests ); 2369 resolve( supportTests ); 2370} ) 2371 // Once the browser emoji support has been obtained from the session, finalize the settings. 2372 .then( ( supportTests ) => { 2373 /* 2374 * Tests the browser support for flag emojis and other emojis, and adjusts the 2375 * support settings accordingly. 2376 */ 2377 for ( const test in supportTests ) { 2378 settings.supports[ test ] = supportTests[ test ]; 2379 2380 settings.supports.everything = 2381 settings.supports.everything && settings.supports[ test ]; 2382 2383 if ( 'flag' !== test ) { 2384 settings.supports.everythingExceptFlag = 2385 settings.supports.everythingExceptFlag && 2386 settings.supports[ test ]; 2387 } 2388 } 2389 2390 settings.supports.everythingExceptFlag = 2391 settings.supports.everythingExceptFlag && 2392 ! settings.supports.flag; 2393 2394 // When the browser can not render everything we need to load a polyfill. 2395 if ( ! settings.supports.everything ) { 2396 const src = settings.source || {}; 2397 2398 if ( src.concatemoji ) { 2399 addScript( src.concatemoji ); 2400 } else if ( src.wpemoji && src.twemoji ) { 2401 addScript( src.twemoji ); 2402 addScript( src.wpemoji ); 2403 } 2404 } 2405 } ); 2406//# sourceURL=https://www.kixie.com/wp-includes/js/wp-emoji-loader.js 2407</script>
vendor: 1 bytes, line 2407
2407
2408<script id="kixie-h1-capitalize"> 2409(function(){ 2410 var sels = 'h1, .hero-title, .hero-badge'; 2411 var els = document.querySelectorAll(sels); 2412 for (var i = 0; i < els.length; i++) { 2413 var el = els[i]; 2414 // Skip pills/badges â they should stay uppercase 2415 if (el.classList.contains('hero-badge')) continue; 2416 var txt = el.textContent || ''; 2417 // Only transform if text appears to be ALL-CAPS (>60% uppercase letters) 2418 var letters = txt.replace(/[^a-zA-Z]/g, ''); 2419 if (letters.length > 3) { 2420 var upper = letters.replace(/[^A-Z]/g, '').length; 2421 if (upper / letters.length > 0.6) { 2422 // Convert to Title Case 2423 el.textContent = txt.toLowerCase().replace(/(?:^|\s|[-/])\S/g, function(m){ return m.toUpperCase(); }); 2424 } 2425 } 2426 } 2427})(); 2428</script>
2428 2429
2430<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a44f16766eb36215',t:'MTc5MTA2MzQ0Mg=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
2430</body> 2431</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.