What is a Contract Adjustment? | DealHub AI

");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, C_685337_89_1_2_1:{ fn:function(log,nonce=''){return (function(x) {var ctx=vwo_$(x),el; /*vwo_debug log("addElement","BODY"); vwo_debug*/; el=vwo_$("BODY"); el; el.each(function(t,e) {var el=vwo_$(e); ; !el.find('[vwo-op-1787748845844=""], [vwo-element-id="1787748845844"]').length && el.performOp(1787748845844).vwoElement({"position":"append","layout":"notification-bar","id":1787205946629,"widgetId":"notificationBar","html":"

The #1 Agentic Quote To Revenue Platform for HubSpot.

Come see it at UNBOUND

","sks":{"d":0,"v":0,"l_ts":0},"sw":null,"rec":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.28183258","filters":[]}],"dslv":2}},"hw":null,"opId":1787748845844,"js":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.28110667","filters":[]}],"dslv":2}}})});;})("BODY")}}, ct_90d59e9398aefc27dc1aba5ec75ed860:{ fn:function(executeTrigger, vwo_$) { (function(){setTimeout((function(){var t=document.querySelector("[vwo-widget-id='1787205946629']");t&&function(){var t=window._vwo_handleMutations||function(t,e){e()},e=this,n="1787205946629",o=this.querySelector(".vwo-notification-bar").offsetHeight+"px",i="vwo-notification-bar-margin-"+n,c="vwo-margin-"+n;this.querySelector(".vwo-notification-bar__close-button").onclick=function(){t(this.parentNode,function(){this.parentNode&&this.parentNode.removeChild(this),d(),document.body.classList.remove(i),this.dispatchEvent(new Event("close_button_clicked"))}.bind(this))}.bind(this);var d=function(){var t=document.getElementById(c);t.parentNode.removeChild(t)};t(e,function(){var n=this,a=function(t){var e="."+i+" { margin-top: "+t+" !important}";document.getElementById(c)&&d();var n=document.createElement("style");n.type="text/css",n.id=c,n.appendChild(document.createTextNode(e)),document.head.appendChild(n)};a(o),document.body.classList.add(i),new ResizeObserver((function(){t(e,function(){a(this.querySelector(".vwo-notification-bar").offsetHeight+"px")}.bind(n))})).observe(document.querySelector(".vwo-notification-bar"))}.bind(this))}.bind(t)()})),setTimeout((function(){document.dispatchEvent(new Event('vwo_widget_added_1787205946629'))}))})() }}, C_685337_89_1_2_2:{ fn:function(log,nonce=''){return (function(x) {var ctx=vwo_$(x),el; /*vwo_debug log("content",".vwo-notification-bar__wrapper > span:nth-of-type(1)"); vwo_debug*/; el=vwo_$(".vwo-notification-bar__wrapper > span:nth-of-type(1)"); el.replaceWith2(`Come see it at UNBOUND`); el=vwo_$(".vwo-notification-bar__wrapper > span:nth-of-type(1)"); el;})(".vwo-notification-bar__wrapper > span:nth-of-type(1)")}}, GL_685337_64_post:{ fn:function(VWO_CURRENT_CAMPAIGN, VWO_CURRENT_VARIATION,nonce = ""){}}, js_9f966e309f333113b412b3c7cbaab7eb:{ fn:function() { return window.wingify_factors_company_details.segments.indexOf('HS CRM Companies') }}, GL_685337_91_pre:{ fn:function(VWO_CURRENT_CAMPAIGN, VWO_CURRENT_VARIATION,nonce = ""){try{ ;(function(){try{var findReactInternalInstanceKey=function(element){return Object.keys(element).find(function(n){return n.startsWith("__reactInternalInstance$")||n.startsWith("__reactFiber$")})},getFiberNode=function(DOMNode,reactInternalsKey){if(DOMNode&&reactInternalsKey)return DOMNode[reactInternalsKey]},updateFiberNode=function(node,fiber,reactInternalsKey){var nodeName=(nodeName=node.nodeName)&&nodeName.toLowerCase();fiber.stateNode=node,fiber.child=null,fiber.tag=node.nodeType===Node.ELEMENT_NODE?5:6,fiber.type&&(fiber.type=fiber.elementType="vwo-"+nodeName),fiber.alternate&&(fiber.alternate.stateNode=node),node[reactInternalsKey]=fiber},updatePropsNode=function(option,el){function vwoAttrTimeout(){var key=Object.keys(el).find(function(n){return n.startsWith("__reactProps$")})||"",endTime=Date.now();if(key&&el[key])switch(option.name){case"href":el[key].href=option.value;break;case"onClick":el[key].onClick&&delete el[key].onClick;break;case"onChange":el[key].onChange&&el[key].onChange({target:el})}key||3e3/gm,""),e.__vwoExpInnerHTML=n)});var node,reactInternalsKey=findReactInternalInstanceKey(this[0]);return reactInternalsKey&&n&&((node=document.createElement("div")).innerHTML=n),void 0===n?this[0]&&this[0].innerHTML:this.each(function(t,e){var isFirstChildReferred=!1,fiber=(reactInternalsKey&&node&&(isFirstChildReferred=1===e.childNodes.length&&1===node.childNodes.length),getFiberNode(isFirstChildReferred?e.firstChild:e,reactInternalsKey));e.innerHTML=n,fiber&&e&&updateFiberNode(isFirstChildReferred?e.firstChild:e,fiber,reactInternalsKey)})},vwo_$.fn.vwoReplaceWith=function(){if(this.length){var content=this[0].outerHTML;if(content)return vwo_$(this).replaceWith(content)}return this},vwo_$.fn.vwoAttr&&!window.originalVwoAttrBeforeReact&&(window.originalVwoAttrBeforeReact=vwo_$.fn.vwoAttr),vwo_$.fn.vwoAttr=function(){var newHref_1;return this.length&&1===arguments.length&&arguments[0].href&&(newHref_1=arguments[0].href,this.each(function(i,el){updatePropsNode({name:"onClick"},el),updatePropsNode({name:"href",value:newHref_1},el)})),originalVwoAttrBeforeReact.apply(this,[].slice.call(arguments))}}catch(e){console.info(e)}})();(function(){try{var getFiberNode=function(DOMNode,reactInternalsKey){if(DOMNode&&reactInternalsKey)return DOMNode[reactInternalsKey]};window.originalBeforeReact||(window.originalBeforeReact=vwo_$.fn.before),vwo_$.fn.before=function(i){try{if(!this.length)return this;var isInputANode=!1,reactInternalsKey=("object"==typeof i&&(isInputANode=!0),element=this[0],Object.keys(element).find(function(n){return n.startsWith("__reactInternalInstance$")||n.startsWith("__reactFiber$")}));if(reactInternalsKey){if(!i)return this;var nodeToBeInserted_1=i[0]||i;if(!nodeToBeInserted_1)return this;this.each(function(t,e){var _c,element,fiber=getFiberNode(e,reactInternalsKey);document.createElement("div");fiber&&isInputANode&&(fiber=(null==(fiber=getFiberNode(e,reactInternalsKey))?void 0:fiber.return)!==getFiberNode(e.parentNode,reactInternalsKey)||!(null!=(fiber=getFiberNode(e.parentNode,reactInternalsKey))&&fiber.stateNode),_c=(null==(_c=getFiberNode(nodeToBeInserted_1,reactInternalsKey))?void 0:_c.return)!==getFiberNode(nodeToBeInserted_1.parentNode,reactInternalsKey)||!(null!=(_c=getFiberNode(nodeToBeInserted_1.parentNode,reactInternalsKey))&&_c.stateNode),!!(element=e)&&Object.keys(element).some(function(n){return n.startsWith("__reactInternalInstance$")})&&(fiber||_c)||(nodeToBeInserted_1.previousElementSibling&&null!=(element=getFiberNode(nodeToBeInserted_1.previousElementSibling,reactInternalsKey))&&element.sibling&&(getFiberNode(nodeToBeInserted_1.previousElementSibling,reactInternalsKey).sibling=getFiberNode(nodeToBeInserted_1.nextElementSibling,reactInternalsKey)),(null==(fiber=nodeToBeInserted_1.parentNode)?void 0:fiber.firstChild)===nodeToBeInserted_1&&nodeToBeInserted_1.nextElementSibling&&null!=(_c=getFiberNode(nodeToBeInserted_1.parentNode,reactInternalsKey))&&_c.child&&(getFiberNode(nodeToBeInserted_1.parentNode,reactInternalsKey).child=getFiberNode(nodeToBeInserted_1.nextElementSibling,reactInternalsKey)),e.previousElementSibling&&null!=(element=getFiberNode(e.previousElementSibling,reactInternalsKey))&&element.sibling&&(getFiberNode(e.previousElementSibling,reactInternalsKey).sibling=getFiberNode(nodeToBeInserted_1,reactInternalsKey)),nodeToBeInserted_1&&null!=(fiber=getFiberNode(nodeToBeInserted_1,reactInternalsKey))&&fiber.sibling&&(getFiberNode(nodeToBeInserted_1,reactInternalsKey).sibling=getFiberNode(e,reactInternalsKey)),nodeToBeInserted_1&&null!=(_c=getFiberNode(nodeToBeInserted_1,reactInternalsKey))&&_c.return&&(getFiberNode(nodeToBeInserted_1,reactInternalsKey).return=getFiberNode(e.parentNode,reactInternalsKey)),e.parentNode.firstChild===e&&null!=(element=getFiberNode(e.parentNode,reactInternalsKey))&&element.child&&(getFiberNode(e.parentNode,reactInternalsKey).child=getFiberNode(nodeToBeInserted_1,reactInternalsKey)),nodeToBeInserted_1.previousElementSibling&&null!=(_c=null==(fiber=getFiberNode(nodeToBeInserted_1.previousElementSibling,reactInternalsKey))?void 0:fiber.alternate)&&_c.sibling&&(getFiberNode(nodeToBeInserted_1.previousElementSibling,reactInternalsKey).alternate.sibling=null==(element=getFiberNode(nodeToBeInserted_1.nextElementSibling,reactInternalsKey))?void 0:element.alternate),(null==(fiber=nodeToBeInserted_1.parentNode)?void 0:fiber.firstChild)===nodeToBeInserted_1&&nodeToBeInserted_1.nextElementSibling&&null!=(element=null==(_c=getFiberNode(nodeToBeInserted_1.parentNode,reactInternalsKey))?void 0:_c.alternate)&&element.child&&(getFiberNode(nodeToBeInserted_1.parentNode,reactInternalsKey).alternate.child=null==(fiber=getFiberNode(nodeToBeInserted_1.nextElementSibling,reactInternalsKey))?void 0:fiber.alternate),e.previousElementSibling&&null!=(element=null==(_c=getFiberNode(e.previousElementSibling,reactInternalsKey))?void 0:_c.alternate)&&element.sibling&&(getFiberNode(e.previousElementSibling,reactInternalsKey).alternate.sibling=null==(fiber=getFiberNode(nodeToBeInserted_1,reactInternalsKey))?void 0:fiber.alternate),nodeToBeInserted_1&&null!=(element=null==(_c=getFiberNode(nodeToBeInserted_1,reactInternalsKey))?void 0:_c.alternate)&&element.sibling&&(getFiberNode(nodeToBeInserted_1,reactInternalsKey).alternate.sibling=null==(fiber=getFiberNode(e,reactInternalsKey))?void 0:fiber.alternate),nodeToBeInserted_1&&null!=(element=null==(_c=getFiberNode(nodeToBeInserted_1,reactInternalsKey))?void 0:_c.alternate)&&element.return&&(getFiberNode(nodeToBeInserted_1,reactInternalsKey).alternate.return=null==(fiber=getFiberNode(e.parentNode,reactInternalsKey))?void 0:fiber.alternate),e.parentNode.firstChild===e&&null!=(element=null==(_c=getFiberNode(e.parentNode,reactInternalsKey))?void 0:_c.alternate)&&element.child&&(getFiberNode(e.parentNode,reactInternalsKey).alternate.child=null==(fiber=getFiberNode(nodeToBeInserted_1,reactInternalsKey))?void 0:fiber.alternate)))})}}catch(e){}var element;return originalBeforeReact.apply(this,[].slice.call(arguments))}}catch(e){console.info(e)}})(); }catch(e){}}}, GL_685337_91_post:{ fn:function(VWO_CURRENT_CAMPAIGN, VWO_CURRENT_VARIATION,nonce = ""){}}, C_685337_64_1_3_0:{ fn:function(log,nonce=''){return (function(x) {var ctx=vwo_$(x),el; /*vwo_debug log("addElement","BODY"); vwo_debug*/; el=vwo_$("html.vwo_p_s_b2c79ad7dcf03ba266dc0885e1266675 BODY"); el; el.each(function(t,e) {var el=vwo_$(e); ; !el.find('[vwo-op-1783498018844=""], [vwo-element-id="1783498018844"]').length && el.performOp(1783498018844).vwoElement({"position":"append","layout":"modal-banner-image","id":1773914149116,"widgetId":"modal","html":"

","sks":{"d":0,"v":0,"l_ts":0},"sw":{"p_dsl":"3"},"rec":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.26810592","filters":[]}],"dslv":2}},"hw":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.26810595","filters":[]}],"dslv":2}},"opId":1783498018844,"js":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.26810598","filters":[]}],"dslv":2}}})});; /*vwo_debug log("addElement","BODY"); vwo_debug*/; el=vwo_$("html.vwo_p_s_532c28d5412dd75bf975fb951c740a30 BODY"); el; !el.find('[vwo-op-1783498018851=""], [vwo-element-id="1783498018851"]').length && el.performOp(1783498018851).vwoElement({"position":"append","layout":"modal-banner-image","id":1774172634980,"widgetId":"modal","html":"

","sks":{"d":0,"v":0,"l_ts":0},"sw":{"p_dsl":"6"},"rec":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.26810601","filters":[]}],"dslv":2}},"hw":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.26810604","filters":[]}],"dslv":2}},"opId":1783498018851,"js":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.26810607","filters":[]}],"dslv":2}}});})("body")}}, C_685337_91_1_3_2:{ fn:function(log,nonce=''){return (function(x) {var ctx=vwo_$(x),el; /*vwo_debug log("content",".vwo-notification-bar__wrapper > span:nth-of-type(1)"); vwo_debug*/; el=vwo_$(".vwo-notification-bar__wrapper > span:nth-of-type(1)"); el.replaceWith2(`See how at Dreamforce`); el=vwo_$(".vwo-notification-bar__wrapper > span:nth-of-type(1)"); el;})(".vwo-notification-bar__wrapper > span:nth-of-type(1)")}}, C_685337_91_1_2_0:{ fn:function(log,nonce=''){return (function(x) {;var _vwo_sel=vwo_$("");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, C_685337_91_1_2_1:{ fn:function(log,nonce=''){return (function(x) {var ctx=vwo_$(x),el; /*vwo_debug log("addElement","BODY"); vwo_debug*/; el=vwo_$("BODY"); el; el.each(function(t,e) {var el=vwo_$(e); ; !el.find('[vwo-op-1788253837034=""], [vwo-element-id="1788253837034"]').length && el.performOp(1788253837034).vwoElement({"position":"append","layout":"notification-bar","id":1787205946629,"widgetId":"notificationBar","html":"

The #1 Agentic Quote To Revenue Platform for Salesforce.

Come see it at Dreamforce

","sks":{"d":0},"sw":null,"rec":null,"hw":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.28192402","filters":[]}],"dslv":2}},"opId":1788253837034,"js":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.28110667","filters":[]}],"dslv":2}}})});;})("BODY")}}, C_685337_91_1_2_2:{ fn:function(log,nonce=''){return (function(x) {var ctx=vwo_$(x),el; /*vwo_debug log("content",".vwo-notification-bar__wrapper > span:nth-of-type(1)"); vwo_debug*/; el=vwo_$(".vwo-notification-bar__wrapper > span:nth-of-type(1)"); el.replaceWith2(`See how at Dreamforce`); el=vwo_$(".vwo-notification-bar__wrapper > span:nth-of-type(1)"); el;})(".vwo-notification-bar__wrapper > span:nth-of-type(1)")}}, C_685337_91_1_3_0:{ fn:function(log,nonce=''){return (function(x) {;var _vwo_sel=vwo_$("");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, C_685337_91_1_3_1:{ fn:function(log,nonce=''){return (function(x) {var ctx=vwo_$(x),el; /*vwo_debug log("addElement","BODY"); vwo_debug*/; el=vwo_$("BODY"); el; el.each(function(t,e) {var el=vwo_$(e); ; !el.find('[vwo-op-1788253887310=""], [vwo-element-id="1788253887310"]').length && el.performOp(1788253887310).vwoElement({"position":"append","layout":"notification-bar","id":1787205946629,"widgetId":"notificationBar","html":"

The #1 Agentic Quote To Revenue Platform for Salesforce.

Come see it at Dreamforce

","sks":{"d":0},"sw":null,"rec":null,"hw":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.28192402","filters":[]}],"dslv":2}},"opId":1788253887310,"js":{"p_dsl":{"cnds":[{"id":1000,"event":"trigger.28110667","filters":[]}],"dslv":2}}})});;})("BODY")}}, ct_5015b6a159fc5ff37238b015fe5d4a35:{ fn:function(executeTrigger, vwo_$) { (function(){let e=JSON.parse(localStorage.getItem('vwo_w_1787205946629')),t=null,l=null;e&&e.l_ts>0&&(t=(new Date).toISOString().slice(0,10),l=new Date(JSON.parse(e.l_ts)).toISOString().slice(0,10)),(t||l)&&t===l||executeTrigger()})() }}, C_685337_93_1_2_0:{ fn:function(log,nonce=''){return (function(x) {;var _vwo_sel=vwo_$("");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, C_685337_93_1_3_0:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$(""); !vwo_$("head").find('#1786540972765').length && vwo_$('head').append(_vwo_sel);}catch(e) {VWO._.vAEH(e);} try{}catch(e) {VWO._.vAEH(e);} try{}catch(e) {VWO._.vAEH(e);} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_685337_93_1_4_0:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$(""); !vwo_$("head").find('#1786540972766').length && vwo_$('head').append(_vwo_sel);}catch(e) {VWO._.vAEH(e);} try{}catch(e) {VWO._.vAEH(e);} try{}catch(e) {VWO._.vAEH(e);} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, ct_2d456393e114f997c8d91338f1bd3baf:{ fn:function(executeTrigger, vwo_$) { (function(){let e=JSON.parse(localStorage.getItem('vwo_w_1773914149116')),t=null,l=null;e&&e.l_ts>0&&(t=(new Date).toISOString().slice(0,10),l=new Date(JSON.parse(e.l_ts)).toISOString().slice(0,10)),(t||l)&&t===l||executeTrigger()})() }}, ct_61b59ed8f1c9667c2bc1b94f2ba0d66b:{ fn:function(executeTrigger, vwo_$) { (function(){document.querySelector('#vwo-widget-1773914149116').addEventListener('close_button_clicked',(function(){try{var t=localStorage.getItem('vwo_w_1773914149116');t&&((t=JSON.parse(t)).d=1,localStorage.setItem('vwo_w_1773914149116',JSON.stringify(t)))}catch(t){}}))})() }}},rules:[{"triggers":["27617489"],"tags":[{"data":{"priority":1,"samplingRate":100},"id":"sampleVisitor"}]},{"triggers":["28110682"],"tags":[{"metricId":2946118,"id":"metric","data":{"campaigns":[{"c":91,"g":4}],"type":"m"}}]},{"triggers":["28110685"],"tags":[{"metricId":2946496,"id":"metric","data":{"campaigns":[{"c":91,"g":5}],"type":"m"}}]},{"triggers":["28303708"],"tags":[{"data":"campaigns.93","id":"runCampaign","priority":4}]},{"triggers":["27711026"],"tags":[{"metricId":2884106,"id":"metric","data":{"campaigns":[{"c":93,"g":7}],"type":"m"}}]},{"triggers":["27711029"],"tags":[{"metricId":2884109,"id":"metric","data":{"campaigns":[{"c":93,"g":8}],"type":"m"}}]},{"triggers":["27711032"],"tags":[{"metricId":2884112,"id":"metric","data":{"campaigns":[{"c":93,"g":9}],"type":"m"}}]},{"triggers":["27711035"],"tags":[{"metricId":2884115,"id":"metric","data":{"campaigns":[{"c":93,"g":10}],"type":"m"}}]},{"triggers":["27755807"],"tags":[{"metricId":2892989,"id":"metric","data":{"campaigns":[{"c":93,"g":11}],"type":"m"}}]},{"triggers":["27793001"],"tags":[{"metricId":2900681,"id":"metric","data":{"campaigns":[{"c":93,"g":12}],"type":"m"}}]},{"triggers":["26810610"],"tags":[{"data":"campaigns.64","id":"runCampaign","priority":4}]},{"triggers":["26810613"],"tags":[{"metricId":0,"id":"metric","data":{"campaigns":[{"c":64,"g":11}],"type":"g"}}]},{"triggers":["26810616"],"tags":[{"metricId":0,"id":"metric","data":{"campaigns":[{"c":64,"g":12}],"type":"g"}}]},{"triggers":["26810619"],"tags":[{"metricId":0,"id":"metric","data":{"campaigns":[{"c":64,"g":13}],"type":"g"}}]},{"triggers":["26810622"],"tags":[{"metricId":0,"id":"metric","data":{"campaigns":[{"c":64,"g":14}],"type":"g"}}]},{"triggers":["28192405","28192411","28337389"],"tags":[{"data":"campaigns.91","id":"runCampaign","priority":4}]},{"triggers":["27076443"],"tags":[{"data":{"priority":2,"samplingRate":0},"id":"sampleVisitor"}]},{"triggers":["28110691","28110697","28183288"],"tags":[{"data":"campaigns.89","id":"runCampaign","priority":4}]},{"triggers":["28110706"],"tags":[{"metricId":2946367,"id":"metric","data":{"campaigns":[{"c":89,"g":5}],"type":"m"}}]},{"triggers":["28112473"],"tags":[{"metricId":2946484,"id":"metric","data":{"campaigns":[{"c":89,"g":6}],"type":"m"}}]},{"triggers":["9"],"tags":[{"id":"visibilityService","priority":2}]},{"triggers":["11"],"tags":[{"id":"revaluateHiding","priority":3}]},{"triggers":["75"],"tags":[{"id":"urlChange"}]},{"triggers":["5"],"tags":[{"id":"checkEnvironment"}]},{"triggers":["2"],"tags":[{"id":"runTestCampaign"}]},{"triggers":["8"],"tags":[{"id":"groupCampaigns","priority":2},{"priority":3,"id":"prePostMutation"}]}],pages:{"ec":[{"3657090":{"inc":["o",["url","urlReg","(?i).*"]]}},{"3769780":{"exc":["o",["url","urlReg","(?i).*\\/lp\\/.*"]],"inc":["o",["url","urlReg","(?i).*https?\:\\/\\/(w{3}\.)?dealhub\.io.*"]]}},{"3769978":{"inc":["o",["url","urlReg","(?i)^https?\:\\/\\/(w{3}\.)?dealhub\.io\\/events\\/hubspot\-unbound\-2026\\/?(?:[\?#].*)?$"]]}},{"3777709":{"inc":["o",["url","urlReg","(?i)^https?\:\\/\\/(w{3}\.)?dealhub\.io\\/events\\/dreamforce\-2026\\/?(?:[\?#].*)?$"]]}},{"3785935":{"exc":["o",["url","urlReg","(?i).*https?\:\\/\\/(w{3}\.)?dealhub\.io\\/lp\\/.*"]],"inc":["o",["url","urlReg","(?i)^https?\:\\/\\/(w{3}\.)?dealhub\.io.*"]]}},{"3682785":{"inc":["o",["url","urlReg","(?i)^.*$"]]}},{"3657093":{"exc":["o",["url","urlReg","(?i).*dealhub\.io\\/(lp\\/.*|alternative\\/.*|see-dealhub-in-action\\/.*|thank-you|alternative-|resource-center\\/videos\\/deel-case-study\\/|dealhub-ai-readiness\\/|author\\/|enterprise-subscription-agreement-msa\\/|resource-center\\/videos\\/intuit-case-study\\/|careers\\/|resource-center\\/|troubleshooting-chrome-login-failure\\/|subskribe-acquired-by-dealhub\\/)"]],"inc":["o",["url","urlReg","(?i).*https?\:\\/\\/(w{3}\.)?dealhub\.io.*"]]}}]},pagesEval:{"ec":[3657090,3769780,3785935,3682785,3657093]},stags:{},domPath:{}}})();if(typeof window!=="undefined"&&window._vwoFlow==="link-survey"){window.VWO._.rCS()} ;if(typeof heatmapDevice!=="undefined"&&heatmapDevice&&VWO._.allSettings&&VWO._.allSettings.dataStore.plugins.UA){VWO._.allSettings.dataStore.plugins.UA.dt=heatmapDevice};var commonWrapper=function(argument){if(!argument){argument={integrationName:"",valuesGetter:function(){return{}},valuesSetter:function(){},verifyData:function(){return{}}}}var isWingifyEnabled=false;var sendMonitoringEvent=function(type,elapsedMs,extraPayload){try{if(argument.integrationName!=="factor"){return}var eventName="vwo_debugLogs";var eventPayload={intName:argument.integrationName||"",type:type,msg:elapsedMs,url:window.location.href};if(extraPayload&&typeof extraPayload==="object"){for(var key in extraPayload){if(Object.prototype.hasOwnProperty.call(extraPayload,key)){eventPayload[key]=extraPayload[key]}}}if(window.VWO&&window.VWO._&&typeof window.VWO._.event==="function"){window.VWO._.event(eventName,eventPayload,{enableLogs:1})}}catch(e){}};var getVisitorUuid=function(){if(window._vwo_acc_id>=1037725){return window.VWO&&window.VWO.get("visitor.id")}else{return window.VWO._&&window.VWO._.cookies&&window.VWO._.cookies.get("_vwo_uuid")}};var pollInterval=100;var timeout=6e4;return function(){sendMonitoringEvent("intCallTriggered",0);var accountIntegrationSettings={};var _interval=null;var startTime=performance.now();var hasSentTimingEvent=false;function waitForAnalyticsVariables(){try{accountIntegrationSettings=argument.valuesGetter();accountIntegrationSettings.visitorUuid=getVisitorUuid();accountIntegrationSettings.isWingifyEnabled=isWingifyEnabled}catch(error){accountIntegrationSettings=undefined}if(accountIntegrationSettings&&argument.verifyData(accountIntegrationSettings)){argument.valuesSetter(accountIntegrationSettings);if(!hasSentTimingEvent){hasSentTimingEvent=true;sendMonitoringEvent("intDataPushed",Math.round(performance.now()-startTime))}return 1}return 0}var currentTime=0;_interval=setInterval((function(){currentTime=currentTime||performance.now();var result=waitForAnalyticsVariables();var isTimeout=performance.now()-currentTime>=timeout;if(isTimeout&&!hasSentTimingEvent){hasSentTimingEvent=true;sendMonitoringEvent("intTimeout",Math.round(performance.now()-startTime),{timeout_ms:timeout})}if(result||isTimeout){clearInterval(_interval)}}),pollInterval)}}; commonWrapper({valuesGetter:function(){return{}},valuesSetter:function(data){var ga4_device_id="";if(typeof window.VWO._.cookies!=="undefined"){ga4_device_id=window.VWO._.cookies.get("_ga")||""}if(ga4_device_id){window.vwo_ga4_uuid=ga4_device_id.split(".").slice(-2).join(".");window.wingify_ga4_uuid=window.vwo_ga4_uuid}},verifyData:function(data){if(typeof window.VWO._.cookies!=="undefined"){return window.VWO._.cookies.get("_ga")||""}else{return false}}})(); var serverPushCommonWrapper=function(argument){var serverfiredCamp={};var INTEGRATION_EVENT="vwo_integrationData";var defaultArgument={partner:null,getExperimentList:function(){return[]},accountSettings:function(){return{}},getCampaignSettings:function(){return{}},getServerPushPayload:function(){return null}};argument=argument||{};for(var key in defaultArgument){if(!argument[key]){argument[key]=defaultArgument[key]}}return function(){window.VWO=window.VWO||[];function ensureVwoEvent(){window.VWO=window.VWO||[];window.VWO.event=window.VWO.event||function(){window.VWO.push(["event"].concat([].slice.call(arguments)))}}function getVisitorUuid(){if(window._vwo_acc_id>=1037725){return window.VWO&&window.VWO.get("visitor.id")}return window.VWO._&&window.VWO._.cookies&&window.VWO._.cookies.get("_vwo_uuid")}function isFirstVisit(repeated){return repeated!=="vS"&&repeated!=="vSS"}function triggerServerPush(cData){var expId=cData.expId;var variationId=cData.variationId;var visitorUuid=cData.visitorUuid;var connectS=cData.connectS;var repeated=cData.repeated;if(!isFirstVisit(repeated)){return}if(!connectS||connectS.isServerSidePush!==true){return}var experimentList=argument.getExperimentList();var cId=connectS.cId;var partner=argument.partner;if(!partner||typeof partner!=="string"||!partner.length){return}serverfiredCamp[expId]=serverfiredCamp[expId]||{};if(serverfiredCamp[expId][cId]){return}if(experimentList.indexOf(+expId)===-1){return}var timeout=6e4;var currentTime=0;var interval=setInterval((function(){window.serverExpList=window.serverExpList||{};window.serverExpList[partner]=window.serverExpList[partner]||{};window.serverExpList[partner][cId]=window.serverExpList[partner][cId]||[];if(window.serverExpList[partner][cId].indexOf(expId)!==-1){clearInterval(interval);return}currentTime=currentTime||performance.now();var campaign=window._vwo_exp&&window._vwo_exp[expId];if(!campaign||!campaign.comb_n||!campaign.comb_n[variationId]){return}var defaultPayload={campaignId:expId,variationId:variationId,partner:partner,campaignName:campaign.name,variationName:campaign.comb_n[variationId],connectorId:connectS.cId};var integrationPayload=argument.getServerPushPayload(connectS,{expId:expId,variationId:variationId,visitorUuid:visitorUuid});var payload=Object.assign({},defaultPayload,integrationPayload);if(payload&&payload.partnerId){ensureVwoEvent();window.VWO.event(INTEGRATION_EVENT,payload);serverfiredCamp[expId][cId]=variationId;window.serverExpList[partner][cId].push(expId);clearInterval(interval);return}if(performance.now()-currentTime>=timeout){clearInterval(interval)}}),100)}function callbackFn(data){if(!data){return}var repeated=data[0];var expId=data[1];var variationId=data[2];var visitorUuid=getVisitorUuid();var accountSettings=argument.accountSettings();var allCampaignSettings=argument.getCampaignSettings();var connectors=allCampaignSettings.connectors;if(typeof connectors==="undefined"||connectors===null){connectors=[accountSettings]}var pushSettings=allCampaignSettings.push||{};var campaignConnectors=pushSettings[expId]||[0];var connectCampSettings=campaignConnectors.map((function(id){var connector=connectors[id]||{};return Object.assign({},connector,{cId:id})}));if(expId&&variationId&&["VISUAL_AB","VISUAL","SPLIT_URL"].indexOf(_vwo_exp[expId].type)>-1){connectCampSettings.forEach((function(connectS){triggerServerPush({expId:expId,variationId:variationId,visitorUuid:visitorUuid,connectS:connectS,repeated:repeated})}))}}window.VWO.push(["onVariationApplied",callbackFn]);window.VWO.push(["onVariationShownSent",callbackFn])}}; var pushBasedCommonWrapper=function(argument){var firedCamp={};var defaultArgument={integrationName:"",getExperimentList:function(){return[]},accountSettings:function(){return{}},getCampaignSettings:function(){return{}},pushData:function(){return false},sendData:function(){return false}};argument=argument||{};for(var key in defaultArgument){if(!argument[key]){argument[key]=defaultArgument[key]}}return function(){window.VWO=window.VWO||[];var getVisitorUuid=function(){if(window._vwo_acc_id>=1037725){return window.VWO&&window.VWO.get("visitor.id")}else{return window.VWO._&&window.VWO._.cookies&&window.VWO._.cookies.get("_vwo_uuid")}};var sendDebugLogsOld=function(expId,variationId,errorType,user_type,data){try{var errorPayload={f:argument["integrationName"]||"",a:window._vwo_acc_id,url:window.location.href,exp:expId,v:variationId,vwo_uuid:getVisitorUuid(),user_type:user_type};if(errorType=="initIntegrationCallback"){errorPayload["log_type"]="initIntegrationCallback";errorPayload["data"]=JSON.stringify(data||"")}else if(errorType=="timeout"){errorPayload["timeout"]=true}if(window.VWO._.customError){window.VWO._.customError({msg:"integration debug",url:window.location.href,lineno:"",colno:"",source:JSON.stringify(errorPayload)})}}catch(e){window.VWO._.customError&&window.VWO._.customError({msg:"integration debug failed",url:"",lineno:"",colno:"",source:""})}};var sendDebugLogs=function(expId,variationId,errorType,user_type){var eventName="vwo_debugLogs";var eventPayload={};try{eventPayload={intName:argument["integrationName"]||"",varId:variationId,expId:expId,type:errorType,vwo_uuid:getVisitorUuid(),user_type:user_type};if(window.VWO._.event){window.VWO._.event(eventName,eventPayload,{enableLogs:1})}}catch(e){eventPayload={msg:"integrationevent log failed",url:window.location.href};window.VWO._.event&&window.VWO._.event(eventName,eventPayload)}};var getVariationDetails=function(exp,variation_id){if(!exp)return null;var isPersonalizeV2=exp.iType&&exp.iType.type==="TARGETING"&&exp.iType.v===2;if(isPersonalizeV2){var parts=String(variation_id).split(",");if(parts.length<2)return null;var targetId=String(parts[0]);var targetName=exp.comb_n[targetId];var varId=String(parts[1]);var variationName="";if(exp.sections&&exp.sections[1]&&exp.sections[1].variation_names){variationName=exp.sections[1].variation_names[varId]}return{variation_id:varId,variation_name:variationName||"",target_id:targetId||"",target_name:targetName||""}}var variationNameNormal="";if(exp.comb_n){variationNameNormal=exp.comb_n[variation_id]}return{variation_id:variation_id,variation_name:variationNameNormal||"",target_id:"",target_name:""}};var triggerConnector=function(cData){var expId=cData.expId,variationId=cData.variationId,visitorUuid=cData.visitorUuid,connectS=cData.connectS,repeated=cData.repeated;var experimentList=argument.getExperimentList();var cId=connectS.cId;var singleCall=connectS.singleCall||0;var debug=connectS.debug||0;var integrationName=argument["integrationName"]||"vwo";firedCamp[expId]=firedCamp[expId]||{};if(singleCall&&(repeated==="vS"||repeated==="vSS")||firedCamp[expId][cId]){return}if(debug){sendDebugLogs(expId,variationId,"intCallTriggered",repeated);sendDebugLogsOld(expId,variationId,"initIntegrationCallback",repeated)}if(experimentList.indexOf(+expId)!==-1){firedCamp[expId][cId]=variationId;var pollInterval=100;var currentTime=0;var timeout=6e4;var user_type=_vwo_exp[expId].exec?"vwo-retry":"vwo-new";var interval=setInterval((function(){window.expList=window.expList||{};window.expList[integrationName]=window.expList[integrationName]||{};window.expList[integrationName][cId]=window.expList[integrationName][cId]||[];if(window.expList[integrationName][cId].indexOf(expId)!==-1){clearInterval(interval);return}var isWingifyEnabled=false;connectS.isWingifyEnabled=isWingifyEnabled;var variationDetails=getVariationDetails(window._vwo_exp[expId],variationId);var wingifyData={eN:"wingify",isAbtastyPushFormat:window._vwo_exp[expId].isAbtastyPushFormat,eP:{cN:window._vwo_exp[expId].name,cI:expId,vN:variationDetails.variation_name,vI:variationDetails.variation_id,tN:variationDetails.target_name,tI:variationDetails.target_id,uI:visitorUuid||""}};currentTime=currentTime||performance.now();var pushData=argument.pushData(expId,variationId,visitorUuid,connectS);var sendData=argument.sendData(wingifyData,visitorUuid,connectS);var toClearInterval=pushData||sendData;if(debug&&toClearInterval){sendDebugLogsOld(expId,variationId,"",user_type);sendDebugLogs(expId,variationId,"intDataPushed",user_type)}var isTimeout=performance.now()-currentTime>=timeout;if(isTimeout&&debug){sendDebugLogsOld(expId,variationId,"timeout",user_type);sendDebugLogs(expId,variationId,"intTimeout",user_type)}if(toClearInterval||isTimeout){clearInterval(interval)}if(toClearInterval){window.expList[integrationName][cId].push(expId)}}),pollInterval||100)}};var callbackFn=function(data){if(!data)return;var expId=data[1],variationId=data[2],repeated=data[0];var visitorUuid=getVisitorUuid();var accountSettings=argument.accountSettings();var allCampaignSettings=argument.getCampaignSettings();var connectors=allCampaignSettings["connectors"];if(typeof connectors==="undefined"||connectors===null){connectors=[accountSettings]}var pushSettings=allCampaignSettings["push"]||{};var campaignConnectors=pushSettings[expId]||[0];var connectCampSettings=campaignConnectors.map(id=>({...connectors[id],cId:id}));if(expId&&variationId&&["VISUAL_AB","VISUAL","SPLIT_URL"].indexOf(_vwo_exp[expId].type)>-1){connectCampSettings.forEach(connectS=>{var cData={expId:expId,variationId:variationId,visitorUuid:visitorUuid,connectS:connectS,repeated:repeated};triggerConnector(cData)})}};window.VWO.push(["onVariationApplied",callbackFn]);window.VWO.push(["onVariationShownSent",callbackFn])}}; (function(){var VWOOmniTemp={};window.VWOOmni=window.VWOOmni||{};for(var key in VWOOmniTemp)Object.prototype.hasOwnProperty.call(VWOOmniTemp,key)&&(window.VWOOmni[key]=VWOOmniTemp[key]);commonWrapper({valuesGetter:function(){return {}},valuesSetter:function(data){var ga4_device_id="";if(typeof window.VWO._.cookies!=="undefined"){ga4_device_id=window.VWO._.cookies.get("_ga")||""}if(ga4_device_id){window.vwo_ga4_uuid=ga4_device_id.split(".").slice(-2).join(".");window.wingify_ga4_uuid=window.vwo_ga4_uuid}},verifyData:function(data){if(typeof window.VWO._.cookies!=="undefined"){return window.VWO._.cookies.get("_ga")||""}else{return false}}})(); pushBasedCommonWrapper({integrationName:"GA4",getExperimentList:function(){return [93,91,89,64]},getCampaignSettings:function(){return {"push":{"70":[36278],"71":[36278],"51":[36278],"61":[36278],"89":[36278],"91":[36278],"78":[36278],"79":[36278],"54":[36278],"56":[36278],"82":[36278],"40":[36278],"84":[36278],"58":[36278],"87":[36278],"88":[36278],"46":[36278],"52":[36278],"53":[36278],"92":[36278],"93":[36278],"62":[36278],"63":[36278],"57":[36278],"64":[36278],"55":[36278],"65":[36278],"48":[36278],"90":[36278],"68":[36278],"69":[36278]},"connectors":{}}},accountSettings:function(){var accountIntegrationSettings={"isSegment":true};if(accountIntegrationSettings["debugType"]=="ga4"&&accountIntegrationSettings["debug"]){accountIntegrationSettings["debug"]=1}else{accountIntegrationSettings["debug"]=0}return accountIntegrationSettings},sendData:function(wData,visitorUuid,config){var ga4Setup=config["setupVia"]||"gtag";if(!wData.isAbtastyPushFormat&&(!window.gtag||ga4Setup!="gtag")){return false}if(wData.isAbtastyPushFormat&&config["measurementId"]){window.dataLayer=window.dataLayer||[];if(!window.gtag){window.gtag=window.gtag||function(){window.dataLayer.push(arguments)}}var measurementId=config["measurementId"];window.gtag("config",measurementId);window.gtag("event","abtasty",{exp_variant_string:`ABT-${wData.eP.cI}-${wData.eP.vI}`,abtasty_campaign:`[${wData.eP.cI}] ${wData.eP.cN}`,abtasty_variation:`[${wData.eP.vI}] ${wData.eP.vN}`,send_to:measurementId});return true}else if(config["isWingifyEnabled"]===true){var wingifyMeasurementId=config["measurementId"];var params={exp_variant_string:"wingify-"+wData.eP.cI+"-"+wData.eP.vI};if(typeof wingifyMeasurementId!=="undefined"&&wingifyMeasurementId!==null&&wingifyMeasurementId!==""){window.gtag("config",wingifyMeasurementId);params["send_to"]=wingifyMeasurementId}window.gtag("event","experience_impression",params);return true}else{var vwoMeasurementId=config["measurementId"];var eventName="VWO";var eventParams={vwo_campaign_name:wData.eP.cN+":"+wData.eP.cI,vwo_variation_name:wData.eP.vN+":"+wData.eP.vI};var experienceImpressionParams={exp_variant_string:"VWO-"+wData.eP.cI+"-"+wData.eP.vI};if(wData.eP.tI){experienceImpressionParams.exp_variant_string+=","+wData.eP.tI}if(typeof vwoMeasurementId!=="undefined"&&vwoMeasurementId!==null&&vwoMeasurementId!==""){window.gtag("config",vwoMeasurementId);eventParams["send_to"]=vwoMeasurementId;experienceImpressionParams["send_to"]=vwoMeasurementId}window.gtag("event",eventName,eventParams);window.gtag("event","experience_impression",experienceImpressionParams);return true}}})();pushBasedCommonWrapper({integrationName:"GA4-GTM",getExperimentList:function(){return [93,91,89,64]},getCampaignSettings:function(){return {"push":{"70":[36278],"71":[36278],"51":[36278],"61":[36278],"89":[36278],"91":[36278],"78":[36278],"79":[36278],"54":[36278],"56":[36278],"82":[36278],"40":[36278],"84":[36278],"58":[36278],"87":[36278],"88":[36278],"46":[36278],"52":[36278],"53":[36278],"92":[36278],"93":[36278],"62":[36278],"63":[36278],"57":[36278],"64":[36278],"55":[36278],"65":[36278],"48":[36278],"90":[36278],"68":[36278],"69":[36278]},"connectors":{}}},accountSettings:function(){var accountIntegrationSettings={"isSegment":true};if(accountIntegrationSettings["debugType"]=="gtm"&&accountIntegrationSettings["debug"]){accountIntegrationSettings["debug"]=1}else{accountIntegrationSettings["debug"]=0}return accountIntegrationSettings},sendData:function(wData,visitorUuid,config){if(wData.isAbtastyPushFormat&&config["measurementId"]){return true}var ga4Setup=config["setupVia"]||"gtm";var dataVariable=config["dataVariable"]||"dataLayer";if(typeof window[dataVariable]!=="undefined"&&ga4Setup=="gtm"){if(config["isWingifyEnabled"]===true){var exp_variant_string="wingify-"+wData.eP.cI+"-"+wData.eP.vI;if(wData.eP.tI){exp_variant_string+="-"+wData.eP.tI}window[dataVariable].push({event:wData.eN,wingify_exp_variant_string:exp_variant_string});return true}else{var eventName="vwo-data-push-ga4";var vwo_exp_variant_string="VWO-"+wData.eP.cI+"-"+wData.eP.vI;if(wData.eP.tI){vwo_exp_variant_string+=","+wData.eP.tI}window[dataVariable].push({event:eventName,vwo_exp_variant_string:vwo_exp_variant_string});return true}}return false}})(); serverPushCommonWrapper({partner:"ga4",getExperimentList:function(){return [93,91,89,64]},accountSettings:function(){return {"isSegment":true}},getCampaignSettings:function(){return {"push":{"70":[36278],"71":[36278],"51":[36278],"61":[36278],"89":[36278],"91":[36278],"78":[36278],"79":[36278],"54":[36278],"56":[36278],"82":[36278],"40":[36278],"84":[36278],"58":[36278],"87":[36278],"88":[36278],"46":[36278],"52":[36278],"53":[36278],"92":[36278],"93":[36278],"62":[36278],"63":[36278],"57":[36278],"64":[36278],"55":[36278],"65":[36278],"48":[36278],"90":[36278],"68":[36278],"69":[36278]},"connectors":{}}},getServerPushPayload:function(config){try{let partnerId=null;if(window.gtag&&typeof window.gtag==="function"){window.gtag("get",config["measurementId"],"client_id",clientId=>{partnerId=clientId})}if(!partnerId){if(typeof window.VWO._.cookies!=="undefined"){const deviceId=window.VWO._.cookies.get("_ga")||"";if(deviceId&&typeof deviceId==="string"&&deviceId.length>0){partnerId=deviceId.split(".").slice(-2).join(".")}}}if(partnerId&&typeof partnerId==="string"&&partnerId.length>0){return{partnerId:String(partnerId)}}return null}catch(error){return null}}})(); commonWrapper({integrationName:"factor",valuesGetter:function(){return {"isSegment":true}},valuesSetter:function(){const parsedData=window.FactorsDataLayer.ip_derived_info||{};const segments=window.FactorsDataLayer.segments||[];const segmentNames=segments.map(segment=>segment&&segment.name).filter(Boolean);window.vwo_factors_company_details={...parsedData,segments:segmentNames};window.wingify_factors_company_details=window.vwo_factors_company_details},verifyData:function(){return!!(window.FactorsDataLayer&&window.FactorsDataLayer.ip_derived_info&&window.FactorsDataLayer.segments)}})(); ;})();(function(){window.VWO=window.VWO||[];var pollInterval=100;var _vis_data={};var intervalObj={};var analyticsTimerObj={};var experimentListObj={};window.VWO.push(["onVariationApplied",function(data){if(!data){return}var expId=data[1],variationId=data[2];if(expId&&variationId&&["VISUAL_AB","VISUAL","SPLIT_URL"].indexOf(window._vwo_exp[expId].type)>-1){}}])})();; ;var vD=VWO.data||{};VWO.data={content:{"fns":{"list":{"vn":1,"args":{"1":{}}}}},as:"dev.visualwebsiteoptimizer.com/eu01",dacdnUrl:"https://dev.visualwebsiteoptimizer.com",accountJSInfo:{"url":{},"collUrl":"https:\\/\\/dev.visualwebsiteoptimizer.com\\/eu01\\/","rp":90,"noSS":false,"ts":1788318997,"iqst":1788053257,"mrp":20,"pc":{"t":100,"a":100},"pvn":0,"tpc":{}}};for(var k in vD){VWO.data[k]=vD[k]};var gcpfb=function(a,loadFunc,status,err,success){function vwoErr() {_vwo_err&&_vwo_err({message:"Google_Cdn failing for " + a + ". Trying Fallback..",code:"cloudcdnerr",status:status});} if(a.indexOf("/cdn/")!==-1){loadFunc(a.replace("cdn/",""),err,success); vwoErr(); return true;} else if(a.indexOf("/dcdn/")!==-1&&a.indexOf("evad.js") !== -1){loadFunc(a.replace("dcdn/",""),err,success); vwoErr(); return true;}};window.VWO=window.VWO || [];window.VWO._= window.VWO._ || {};window.VWO._.gcpfb=gcpfb;;window._vwoCc = window._vwoCc || {}; if (typeof window._vwoCc.dAM === 'undefined') { window._vwoCc.dAM = 1; };var d={cookie:document.cookie,URL:document.URL,referrer:document.referrer};var w={VWO:{_:{domains:window.VWO._.domains}},_vwo_cdn:window._vwo_cdn,location:{href:window.location.href,search:window.location.search},_vwoCc:window._vwoCc};;window._vwo_cdn="cdn/";window._vwo_apm_debug_cdn="cdn/";window.VWO._.useCdn=true;window.vwo_eT="br";window._VWO=window._VWO||{};window._VWO.fSeg={};window._VWO.dcdnUrl="/dcdn/settings.js";;window.VWO.sTs=1788259302;window._VWO._vis_nc_lib=window.VWO._.domains.sv+window._vwo_cdn+"edrv/nc-f9ab3363bfe7af435e253936d600557b.br.js";var loadWorker=function(url){_vwo_code.load(url, { dSC: true, onloadCb: function(xhr,a){window._vwo_wt_l=true;if(xhr.status===200 ||xhr.status===304){var code="var window="+JSON.stringify(w)+",document="+JSON.stringify(d)+";window.document=document;"+xhr.responseText;var blob=new Blob([code||"throw new Error('code not found!');"],{type:"application/javascript"}),url=URL.createObjectURL(blob); var CoreWorker = window.VWO.WorkerRef || window.Worker; window.mainThread={webWorker:new CoreWorker(url)};window.vwoChannelFW=new MessageChannel();window.vwoChannelToW=new MessageChannel();window.mainThread.webWorker.postMessage({vwoChannelToW:vwoChannelToW.port1,vwoChannelFW:vwoChannelFW.port2},[vwoChannelToW.port1, vwoChannelFW.port2]);if(!window._vwo_mt_f)return window._vwo_wt_f=true;_vwo_code.addScript({text:window._vwo_mt_f});delete window._vwo_mt_f}else{if(gcpfb(a,loadWorker,xhr.status)){return;}_vwo_code.finish("&e=loading_failure:"+a)}}, onerrorCb: function(a){if(gcpfb(a,loadWorker)){return;}window._vwo_wt_l=true;_vwo_code.finish("&e=loading_failure:"+a);}})};loadWorker(window.VWO._.domains.sv +"cdn/edrv/worker-d1465c2fa6101b9e26256b6e05f49649.br.js");;var _vis_opt_file;var _vis_opt_lib;var check_vn=function f(){try{var[r,n,t]=window.jQuery.fn.jquery.split(".").map(Number);return 2===r||1===r&&(4-1&&!check_vn()){_vis_opt_file=vaGqFile}}window._vwo_library_timer=setTimeout((function(){vwoCode.removeLoaderAndOverlay&&vwoCode.removeLoaderAndOverlay();_vwo_code.finish();}),vwoCode.library_tolerance&&typeof vwoCode.library_tolerance()!=="undefined"?vwoCode.library_tolerance():2500),_vis_opt_lib=typeof _vis_opt_lib=="undefined"?window._vwo_cdn+_vis_opt_file:_vis_opt_lib;_vis_opt_lib=window.VWO._.domains.sv+_vis_opt_lib;if(window.location.search.includes("trackingOff=true")){return}var loadLib=function(url){_vwo_code.load(url, { dSC: true, onloadCb:function(xhr,a){window._vwo_mt_l=true;if(xhr.status===200 || xhr.status===304){if(!window._vwo_wt_f)return window._vwo_mt_f=xhr.responseText;_vwo_code.addScript({text:xhr.responseText});delete window._vwo_wt_f;}else{if(gcpfb(a,loadLib,xhr.status)){return;}_vwo_code.finish("&e=loading_failure:"+a);}}, onerrorCb: function(a){if(gcpfb(a,loadLib)){return;}window._vwo_mt_l=true;_vwo_code.finish("&e=loading_failure:"+a);}})};loadLib(_vis_opt_lib);VWO.load_co=function(u,opts){return window._vwo_code.load(u,opts);};;window.VWO._=window.VWO._||{};window.VWO._.langMap={"zh-TW":"zh-Hant","es-AR":"es-AR","el-GR":"gr","pt-BR":"pt-BR","es-419":"es-419","zh":"zh-Hans","nb-No":"no","zh-CN":"zh-Hans"};;;;}}catch(e){_vwo_code.finish();;_vwo_code.removeLoaderAndOverlay&&_vwo_code.removeLoaderAndOverlay();_vwo_err(e);window.VWO.caE=1}})();

Table of Contents

What is a Contract Adjustment?

A contract adjustment is a mutually agreed-upon change to the scope, timeline, or price of an existing business contract. It’s a collaborative process where two businesses decide the terms they originally agreed to need to reflect a change in material costs, deliverables, labor hours, or the surrounding regulatory environment.

Worth clarifying upfront: this has nothing to do with the “contractual adjustment” term you’ll encounter in medical billing, where it refers to the difference between what a provider charges and what an insurer actually pays.

That’s a healthcare accounting concept. What we’re covering here is strictly B2B contract management, where adjustments are about renegotiating the terms of a commercial agreement when circumstances change.

Synonyms

Understanding Contract Adjustments

Contract adjustments are essentially change orders. When a project expands, costs shift, or deadlines move significantly, both parties negotiate updated terms and formalize them in writing.

The adjustment doesn’t replace the original contract, though. It layers on top of it, documenting exactly what changed, why, and what the new agreed-upon terms are.

Most adjustments go through a review process involving legal, finance, and whoever owns the vendor or client relationship, and they require signatures from authorized reps on both sides before anything actually changes.

How contract adjustments work

Identify changed circumstances

Amended agreement active

One party formally requests a contract change.

Both sides assess scope, cost, and timeline impact.

Parties negotiate revised terms and reach an agreement.

Legal drafts or redlines the amendment document.

Finance and stakeholders review for approval.

Authorized representatives on both sides sign off.

Contract records and systems updated to reflect changes.

In practice, you’ll see contract adjustments across a wide range of business contexts:

It’s a particularly common concept in B2B SaaS and project- or service-based businesses.

The operational perspective

​​Operationally, contract adjustments are just a fact of life. Projects change, businesses grow, and no one writes a perfect contract on day one.

They’re a huge part of contract administration, so most ops and finance teams treat them as something to process efficiently, track carefully, and close out without a lot of friction. The goal is keeping the commercial relationship accurate and moving.

The legal perspective

Legally, it’s a different conversation.

Every adjustment is technically an amendment to a binding agreement, which means it carries real enforceability implications. Legal teams care about whether the amendment was properly authorized, whether it creates unintended obligations, and whether it’s documented in a way that holds up if the relationship sours later.

The challenge is that the term gets used informally in day-to-day business. When someone on an ops or sales team says “we adjusted the contract,” they usually mean the business terms got updated in some way. But they might not have actually executed a formal amendment with the right signatures and authorization.

When that happens, the commercial reality and the legal and accounting records are out of sync.

Contract Adjustment vs. Contract Modification

These terms are sometimes used interchangeably because “adjustment” and “modification” mean the same thing on their own. Both involve changing something about an existing contract, but there’s a critical difference when it comes to accounting and legal operations.

A contract modification has a specific technical definition.

Under ASC 606 and IFRS 15, a change only qualifies as a modification if it alters the scope and/or price of the existing contract. At that point, it creates new enforceable rights or obligations that didn’t exist in the original agreement.

Examples include:

That carries specific technical weight: since new rights are being created, the modification essentially produces a new agreement, either as a standalone contract or blended into the existing one. That triggers a revenue recognition reassessment.

A contract adjustment is broader and more functional.

It covers any change to the contract’s commercial value, including modifications, but also changes that simply execute rights already built into the original terms.

These are all adjustments, but they’re not modifications because the contract already anticipated them. No new rights are being created; the parties are just following the rules they already agreed to.

The practical distinction: All modifications result in an adjustment to contract value, but not all adjustments are modifications. If your finance team treats a routine price indexing event as a modification under ASC 606, that’s technically incorrect, and it creates unnecessary work.

Contract adjustments vs. contract modifications

Contract adjustment Contract modification
Definition Any change to a contract’s commercial value, including executing rights already built into the original terms A change that creates new enforceable rights or obligations that didn’t exist in the original agreement
Formally defined term? No – functional/operational language Yes – defined under ASC 606 and IFRS 15
Formality level Informal to formal depending on context Always formal
Who initiates Either party, often ops or account management Either party, typically escalated to legal or finance
Legal weight Low to high depending on whether new rights are created Always high; creates or redefines enforceable rights
Documentation required Depends – may just be executing an existing contract clause Signed amendment, often with legal review
Accounting and revenue impact May or may not trigger revenue reassessment Always triggers revenue recognition reassessment under ASC 606 / IFRS 15
Typical use cases CPI price increases, volume discounts, SLA penalties, billing corrections Adding new deliverables, restructuring payment terms, redefining scope
Examples Annual price indexing kicks in, volume discount threshold reached, late delivery penalty applied New product line added to vendor agreement, multi-year SaaS deal restructured, payment schedule renegotiated post-acquisition
Is it always a modification? No Yes, but results in an adjustment

Common Reasons for Contract Adjustments

Contracts get adjusted for all kinds of reasons, some planned and built into the original terms and some negotiated later on. These are the most common triggers you’ll run into in B2B commercial relationships:

Types of Contract Adjustments

Depending on whether it’s the price, usage, billing, or timeline that’s changing, the adjustment type, documentation requirements, and downstream impact on your financials will all look different.

Pricing adjustments

Pricing adjustments are probably the most common type you’ll deal with. They show up in a few distinct forms depending on what triggered the change:

Pricing adjustments that execute existing contract clauses are straightforward to process. The ones that require negotiation – retroactive changes especially – need more documentation and sign-off.

Usage and quantity adjustments

These adjustments reflect changes in how much of a product or service a customer is actually consuming. They’re especially common in SaaS, cloud, and agreements built around variable usage.

Examples include:

Usage and quantity adjustments are normally the least contentious type. Most of the time, the mechanism for calculating them is already defined in the contract. The friction usually comes from timing and communication, not the math.

Billing adjustments

Billing adjustments correct or reallocate charges that have already been invoiced, or are about to be.

For example:

You need automated billing software for this, because if your systems aren’t set up to handle mid-cycle changes cleanly, you’ll end up issuing corrections manually.

Term and timeline adjustments

These adjustments don’t touch price or usage. Instead, they change when or how long a contract is in effect. Generally speaking, they’re reactive and tend to come up when something goes sideways in the relationship.

Three common examples:

Term and timeline adjustments are usually low-stakes commercially, but they can create complications if they’re not documented properly. A verbal agreement to extend a contract by 30 days means nothing if it’s not in writing.

Contract Adjustments in SaaS and Subscription Businesses

​​SaaS contracts have to flex in ways that traditional service agreements don’t. Customers scale up or down, switch plans, and churn. And they almost always do it mid-cycle. When that happens, the commercial terms need to reflect the current relationship in real time, which means adjustments are basically a built-in feature of the business model.

Usage-based and hybrid pricing models make this even more complicated. When billing is tied to consumption, the contract is almost always in a state of adjustment via true-ups, overages, and tier changes.

Done well, though, this is a retention tool. A proactive adjustment (e.g., a temporary discount or billing credit) is, most of the time, cheaper than losing a customer. So, CS teams increasingly own this conversation and use adjustments as a lever to keep accounts healthy.

Self-serve vs. sales-assisted adjustments

Not all adjustments go through the same process. Knowing which changes can be self-serve and which need a human is a product and ops decision that has real impact on efficiency and customer experience.

Self-serve adjustments

Simple changes like adding seats or upgrading a plan are normally handled through a self-serve portal with no human involvement.

Sales-assisted adjustments

More complex adjustments, like renegotiating pricing or restructuring a multi-year deal, require a sales or CS rep to get involved.

How Contract Adjustments Affect Revenue Recognition

Weak contract management costs companies an average of 9.2% of annual revenue, and a significant chunk of that comes down to how adjustments get handled. And the reason fro that is their downstream impact on revenue recognition.

When a contract adjustment changes the numbers

An adjustment affects revenue recognition any time it changes the transaction price or the timing of when performance obligations are satisfied. A change to a project deadline? Perfect example of a situation where the proportion of revenue you recognize for that performance obligation is also pushed back, even if the client paid up front.

The key distinction is between billing changes and performance obligations. A billing change updates what a customer owes. A change to performance obligations updates what you’ve actually committed to deliver. The first might just be an accounting entry; the second requires a full reassessment of the contract under ASC 606 or IFRS 15.

ASC 606 / IFRS 15 considerations Standalone selling price (SSP) implications
Adjustments that create new enforceable rights must be evaluated under contract modification guidance. SSP is the price at which a good or service would be sold separately, and it anchors how revenue gets allocated.
The entity must determine whether the modification is a separate contract. When an adjustment adds new deliverables, SSP determines how the transaction price gets split.
Transaction price must be reallocated to all remaining performance obligations. Discounts applied mid-contract distort SSP if not documented properly.
Variable consideration must be estimated and constrained appropriately. If the adjusted price doesn’t reflect SSP, the modification may need to be treated as a termination and new contract.
Incomplete or informal adjustments cause revenue to be recognized in the wrong period. Review SSP assumptions any time a pricing adjustment changes the overall deal structure.

Retrospective vs. prospective treatment

How an adjustment gets accounted for depends on whether it applies to past or future performance obligations.

The choice between the two isn’t discretionary. If the remaining goods or services are distinct from what’s already been delivered, you go prospective. If they’re not distinct (meaning they’re part of a single continuous performance obligation) you do a cumulative catch-up.

Operational Challenges of Managing Contract Adjustments

Managing contract adjustments sounds straightforward until you’re doing it at scale across hundreds of accounts. The complexity adds up.

The most common challenges you’ll run into are:

All these issues contribute to compliance risks and data silos between Sales, Finance, Legal, and Billing.

Best Practices for Handling Contract Adjustments

Getting contract adjustments right requires you to buld an internal process across your sales, finance, and legal teams that scales with your business.

Here’s what we recommend:

Also make it a point to review adjustment patterns regularly. If the same ones keep coming up across your customer base, it’s a sign something upstream is broken.

Role of Technology in Managing Contract Adjustments

Technology essentially enables the whole contract management process, including (and especially) adjustments.

There are five pieces of tech you need to run the operation at scale:

Examples of Contract Adjustments in Real-World Scenarios

To help you grasp the concept of adjustments to contracts, here are five real-world scenarios to consider:

SaaS seat downgrades mid-term

A customer contracted for 200 seats but is only actively using 130. At renewal they push back, so you agree to a mid-term downgrade to 150 seats with a prorated credit applied to the remaining contract period.

Usage-based billing true-ups

A customer’s contract includes 500GB of storage per month. By Q3 they’re consistently hitting 620GB. At the end of the contract period, actual consumption gets reconciled against the contracted amount, and an overage charge covering the difference gets added to their next invoice.

Service outage credits

A vendor misses their 99.9% uptime SLA for two consecutive months. Per the contract’s SLA clause, the customer is entitled to a service credit equivalent to 10% of their monthly fee. The credit gets applied to the next billing cycle without any negotiation.

Mid-cycle feature add-ons

A customer wants to add an analytics module that wasn’t in the original agreement. The new feature gets priced at its standalone selling price, a contract amendment gets executed, and billing gets updated to reflect the additional charge on a prorated basis for the remainder of the term.

Temporary pricing relief

A customer flags budget constraints mid-contract and signals they’re considering canceling. Rather than lose the account, you offer a 20% discount for two billing cycles, documented as a formal adjustment with a defined start and end date. Once those two cycles are over, the full rate resumes automatically.

Risks of Poorly Managed Contract Adjustments

Now… if you don’t manage contract adjustments properly, you’ll run into a slew of problems:

The common thread across all of these is process breakdown. Manual processes simply can’t keep up. CLM software automates the adjustment workflow and enforces approval thresholds before changes go live, so it eliminates most of these risks before they materialize. It also gives you the audit trail and the data visibility to catch problems early.

Future of Contract Adjustments

The way businesses manage contract adjustments is changing fast. Three shifts are driving most of it:

DealHub’s CLM is already built for this. Redlining, version comparisons, and guided workflows make contract updates faster and more precise, while configurable approval workflows and ad-hoc sign-offs keep legal, finance, and key stakeholders in the loop without creating bottlenecks.

And on the AI front, we’re building in capabilities for AI-powered search, analysis, and insights, so your team can easily extract key contract details and act on them without digging through documents manually.

People Also Ask

How do you decide whether a change is a contract adjustment or a formal contract modification?

To determine whether a change should be treated as a contract adjustment or a formal contract modification, businesses should use a structured decision framework that considers legal, financial, operational, and customer-facing factors.

Start by evaluating the scope of the change. If the update alters core contract terms—such as pricing, contract length, deliverables, or service levels—it likely qualifies as a formal modification. If the change is temporary, corrective, or billing-related (such as prorations, credits, or usage true-ups), it is usually considered an adjustment.

Next, apply a legal review checklist. Ask whether the change affects enforceable rights or obligations, requires mutual consent, or must be documented in an amendment or addendum. If the answer is yes, it should be treated as a modification.

Then, ensure Finance and RevOps alignment. Finance teams need to assess whether the change impacts revenue recognition, contract value, or performance obligations under standards like ASC 606 or IFRS 15. RevOps teams must confirm that systems such as CPQ, billing, and CRM reflect the correct treatment.

Finally, define a customer communication strategy. Modifications typically require formal acknowledgment and updated contract documentation, while adjustments may only require invoice-level or service-level communication. Clear, proactive communication prevents disputes and preserves trust.

Using this multi-layered approach helps organizations stay compliant, avoid revenue leakage, and deliver a consistent customer experience.

How can a unified quote-to-revenue platform reduce errors and compliance risks in contract adjustments?

A unified quote-to-revenue platform eliminates the handoffs between disparate systems, such as when a price change gets negotiated in CPQ but then has to be passed to CLM for the contract amendment and finally to the billing system for execution on the customer’s end.

When CPQ, CLM, and billing operate as a connected system, an adjustment made in one place cascades through the rest automatically. The contract record updates, the invoice reflects the new terms, and the revenue recognition entry gets calculated correctly. There’s no manual re-entry, version mismatch, or gap between what was agreed to and what gets billed.

From a compliance standpoint, the same connectivity that reduces errors also creates the audit trail for ASC 606 and IFRS 15. Every adjustment is timestamped, tied to an approval, and traceable back to the original contract. So when your auditors ask how a mid-cycle pricing change was handled, you have a complete, documented answer.

Related Topics

Evergreen Contract Contract Liability Contract Review Contract Terms Contract Digitization Contract Fulfillment

The #1 Agentic Quote To Revenue Platform for Salesforce.

Come see it at Dreamforce