{"id":39594,"date":"2026-09-11T05:57:39","date_gmt":"2026-09-11T05:57:39","guid":{"rendered":"https:\/\/innovature.ai\/?page_id=39594"},"modified":"2026-09-30T09:06:31","modified_gmt":"2026-09-30T09:06:31","slug":"logistics-ai-readiness-assessment","status":"publish","type":"page","link":"https:\/\/innovature.ai\/nl\/logistics-ai-readiness-assessment\/","title":{"rendered":"logistics-ai-readiness-assessment"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"39594\" class=\"elementor elementor-39594\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6771bdf e-con-full e-flex e-con e-parent\" data-id=\"6771bdf\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;background_motion_fx_motion_fx_scrolling&quot;:&quot;yes&quot;,&quot;background_motion_fx_translateY_effect&quot;:&quot;yes&quot;,&quot;background_motion_fx_translateY_speed&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:4.2,&quot;sizes&quot;:[]},&quot;background_motion_fx_translateY_affectedRange&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:{&quot;start&quot;:0,&quot;end&quot;:100}},&quot;background_motion_fx_devices&quot;:[&quot;desktop&quot;,&quot;tablet&quot;,&quot;mobile&quot;]}\">\n\t\t<div class=\"elementor-element elementor-element-5bc2b67 e-flex e-con-boxed e-con e-child\" data-id=\"5bc2b67\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f6f519c animated-slow elementor-widget elementor-widget-heading\" data-id=\"f6f519c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;none&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Innovature - Logistics AI Readiness Assessment<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d4946a9 e-flex e-con-boxed e-con e-parent\" data-id=\"d4946a9\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c3208e9 elementor-widget elementor-widget-heading\" data-id=\"c3208e9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">BEFORE YOU START<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-feccb78 elementor-widget elementor-widget-heading\" data-id=\"feccb78\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Which workflow are you evaluating?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d05b6ca elementor-widget elementor-widget-heading\" data-id=\"d05b6ca\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">Choose the workflow where AI could make the biggest difference to your operation.<br>\nEvery question that follows will evaluate your readiness to apply AI to this workflow.<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-95b1731 e-flex e-con-boxed e-con e-parent\" data-id=\"95b1731\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-113c93e elementor-widget elementor-widget-shortcode\" data-id=\"113c93e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<div class=\"inno-assessment-wrapper\" id=\"inno_log_read_5951\">\n  <div class=\"inno-progress-strip\"><div class=\"inno-progress-fill\" id=\"progressFill_inno_log_read_5951\"><\/div><\/div>\n\n  <div class=\"inno-shell\">\n    <section class=\"inno-q-panel\">\n      <button class=\"inno-q-back\" id=\"qBack_inno_log_read_5951\" hidden>&larr; Back<\/button>\n      <div class=\"inno-q-inner\" id=\"questionView_inno_log_read_5951\"><\/div>\n\n      <div class=\"inno-q-inner inno-result-view\" id=\"resultView_inno_log_read_5951\" hidden>\n        <p class=\"inno-q-meta mono\" id=\"resultMeta_inno_log_read_5951\">YOUR ASSESSMENT RESULTS<\/p>\n        <div class=\"inno-result-score\">\n          <svg class=\"inno-result-ring\" width=\"90\" height=\"90\" viewBox=\"0 0 90 90\">\n            <circle cx=\"45\" cy=\"45\" r=\"39\" fill=\"none\" stroke=\"#E1E3E8\" stroke-width=\"6\"\/>\n            <circle cx=\"45\" cy=\"45\" r=\"39\" fill=\"none\" stroke=\"#2E5CFF\" stroke-width=\"6\" stroke-linecap=\"round\"\n                    id=\"resultRingArc_inno_log_read_5951\" stroke-dasharray=\"245\" stroke-dashoffset=\"245\" transform=\"rotate(-90 45 45)\"\/>\n            <text x=\"45\" y=\"42\" text-anchor=\"middle\" font-family=\"Space Grotesk\" font-weight=\"700\" font-size=\"22\" fill=\"#10131A\" id=\"resultRingNum_inno_log_read_5951\">0<\/text>\n            <text x=\"45\" y=\"58\" text-anchor=\"middle\" font-family=\"IBM Plex Mono\" font-size=\"10.5\" fill=\"#8A909C\">\/ 24<\/text>\n          <\/svg>\n          <div>\n            <div class=\"inno-result-band\" id=\"resultBand_inno_log_read_5951\">&mdash;<\/div>\n            <div class=\"inno-result-sub\" id=\"resultSub_inno_log_read_5951\">&mdash;<\/div>\n          <\/div>\n        <\/div>\n        <div class=\"inno-gap-callout\" id=\"gapCallout_inno_log_read_5951\"><\/div>\n        <p style=\"font-size:15.5px; color:var(--text-dim); margin-bottom:12px;\">Enter your details to receive your customized report and Logistics Decision Guide:<\/p>\n        \n        <form class=\"inno-lead-form\" id=\"leadForm_inno_log_read_5951\">\n          <div style=\"display:flex; flex-direction:column; gap:10px; width:100%;\">\n            <div style=\"display:grid; grid-template-columns:1fr 1fr; gap:10px;\">\n              <input type=\"text\" id=\"leadFirstName_inno_log_read_5951\" placeholder=\"First Name *\" required style=\"padding:13px 16px; border-radius:8px; border:1.5px solid var(--line); font-size:15px; font-family:'IBM Plex Sans',sans-serif; width:100%; box-sizing:border-box;\" \/>\n              <input type=\"text\" id=\"leadLastName_inno_log_read_5951\" placeholder=\"Last Name\" style=\"padding:13px 16px; border-radius:8px; border:1.5px solid var(--line); font-size:15px; font-family:'IBM Plex Sans',sans-serif; width:100%; box-sizing:border-box;\" \/>\n            <\/div>\n            <div style=\"display:grid; grid-template-columns:1fr 1fr; gap:10px;\">\n              <input type=\"email\" id=\"leadEmail_inno_log_read_5951\" placeholder=\"Work Email *\" required style=\"padding:13px 16px; border-radius:8px; border:1.5px solid var(--line); font-size:15px; font-family:'IBM Plex Sans',sans-serif; width:100%; box-sizing:border-box;\" \/>\n              <input type=\"text\" id=\"leadCompany_inno_log_read_5951\" placeholder=\"Company Name\" style=\"padding:13px 16px; border-radius:8px; border:1.5px solid var(--line); font-size:15px; font-family:'IBM Plex Sans',sans-serif; width:100%; box-sizing:border-box;\" \/>\n            <\/div>\n            <button type=\"submit\" class=\"inno-btn inno-btn-solid\" id=\"submitBtn_inno_log_read_5951\" style=\"align-self:flex-start; margin-top:6px;\">Unlock Full Report &amp; Send Copy &rarr;<\/button>\n          <\/div>\n        <\/form>\n        <p class=\"inno-fine\" style=\"margin-top:10px;\">no spam &middot; unsubscribe anytime<\/p>\n      <\/div>\n\n      <div class=\"inno-q-inner inno-done-view\" id=\"doneView_inno_log_read_5951\" hidden>\n        <div class=\"inno-done-dot\">&check;<\/div>\n        <p class=\"inno-q-text\" style=\"font-size:26px; margin-bottom:6px;\">Your Readiness Breakdown<\/p>\n        <p style=\"font-size:15px; color:var(--text-dim); margin-bottom:6px;\">A tailored assessment report has been sent to <b id=\"sentEmail_inno_log_read_5951\"><\/b>.<\/p>\n        <div class=\"inno-breakdown-final\" id=\"breakdownFinal_inno_log_read_5951\"><\/div>\n        <p style=\"font-size:15px; color:var(--text-dim); margin:12px 0 16px;\">Want to review your logistics automation readiness with an architect?<\/p>\n        <div style=\"display:flex; gap:10px; flex-wrap:wrap;\">\n          <a href=\"https:\/\/innovature.ai\/contact\/\" class=\"inno-btn inno-btn-solid\">Book a Scoping Call &rarr;<\/a>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <aside class=\"inno-score-panel\">\n      <p class=\"inno-score-title\">Live Readiness Score<\/p>\n      <div class=\"inno-ring-wrap\">\n        <svg width=\"150\" height=\"150\" viewBox=\"0 0 150 150\">\n          <circle cx=\"75\" cy=\"75\" r=\"64\" fill=\"none\" stroke=\"#2A3140\" stroke-width=\"9\"\/>\n          <circle cx=\"75\" cy=\"75\" r=\"64\" fill=\"none\" stroke=\"#7C94FF\" stroke-width=\"9\" stroke-linecap=\"round\"\n                  id=\"sideRingArc_inno_log_read_5951\" stroke-dasharray=\"402\" stroke-dashoffset=\"402\" transform=\"rotate(-90 75 75)\"\n                  style=\"transition:stroke-dashoffset 0.5s ease;\"\/>\n          <text x=\"75\" y=\"70\" text-anchor=\"middle\" font-family=\"Space Grotesk\" font-weight=\"700\" font-size=\"34\" fill=\"#F3F4F6\" id=\"sideRingNum_inno_log_read_5951\">0<\/text>\n          <text x=\"75\" y=\"92\" text-anchor=\"middle\" font-family=\"IBM Plex Mono\" font-size=\"13\" fill=\"#9AA1B0\">\/ 24<\/text>\n        <\/svg>\n      <\/div>\n      <div class=\"inno-cat-list\" id=\"catList_inno_log_read_5951\"><\/div>\n      <p class=\"inno-score-note\">Nothing here is scored until you answer &mdash; updates live as you go.<\/p>\n    <\/aside>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n  var uid = 'inno_log_read_5951';\n  var assessmentTitle = 'Logistics AI Readiness Assessment';\n  var ctaUrl = 'https:\/\/innovature.ai\/contact\/';\n\n  var WORKFLOW_OPTIONS = [\n    \"Document intelligence & delivery verification (POD, BOL & fraud checks)\",\n    \"Delay prediction & customer updates\",\n    \"Route & dispatch optimization\",\n    \"Settlement & invoice reconciliation\",\n    \"All of the above\"\n  ];\n\n  var CATEGORIES = [\n    { id: 'process', label: 'Process Readiness', max: 6 },\n    { id: 'data',    label: 'Data & Systems Readiness', max: 6 },\n    { id: 'team',    label: 'Team & Ownership Readiness', max: 6 },\n    { id: 'risk',    label: 'Risk & Governance Readiness', max: 6 }\n  ];\n\n  var QUESTIONS = [\n    {\n      cat: 'process', catLabel: 'Process Readiness', catNum: 1,\n      q: 'Is this process documented today?',\n      why: 'Documented processes give an AI system a stable pattern to learn. In logistics this is often tribal knowledge in a dispatcher\u2019s head, not a written SOP \u2014 that\u2019s the most common source of scope creep once a build starts.',\n      opts: [{ l: 'Not really', s: 1 }, { l: 'Partially', s: 2 }, { l: 'Fully documented', s: 3 }]\n    },\n    {\n      cat: 'process', catLabel: 'Process Readiness', catNum: 1,\n      q: 'How consistent is it across drivers, dispatchers, or terminals?',\n      why: 'High variability from driver to driver or terminal to terminal is the top reason a system works perfectly in a pilot and breaks once it scales.',\n      opts: [{ l: 'Highly variable', s: 1 }, { l: 'Mostly consistent', s: 2 }, { l: 'Standardized', s: 3 }]\n    },\n    {\n      cat: 'data', catLabel: 'Data & Systems Readiness', catNum: 2,\n      q: 'Where does the data for this workflow live today?',\n      why: 'AI can only act on what it can reach. Paper PODs and texted photos are the single most common blocker we see on scoping calls.',\n      opts: [{ l: 'Scattered (paper, photos, texts)', s: 1 }, { l: 'Partially in your TMS\/dispatch tool', s: 2 }, { l: 'Centralized in one system', s: 3 }]\n    },\n    {\n      cat: 'data', catLabel: 'Data & Systems Readiness', catNum: 2,\n      q: 'Do you have API access to your TMS or dispatch software?',\n      why: 'API access is what determines whether an intelligence layer can actually act \u2014 flag a risk, update a delay \u2014 or just read and report back to a human.',\n      opts: [{ l: 'No \/ unsure', s: 1 }, { l: 'Some', s: 2 }, { l: 'Yes', s: 3 }]\n    },\n    {\n      cat: 'team', catLabel: 'Team & Ownership Readiness', catNum: 3,\n      q: 'Is there a named owner for this workflow?',\n      why: 'Projects without a named owner \u2014 a dispatch manager, an ops director \u2014 are the most common reason a working pilot never makes it into daily use.',\n      opts: [{ l: 'No owner', s: 1 }, { l: 'Informal owner', s: 2 }, { l: 'Dedicated owner', s: 3 }]\n    },\n    {\n      cat: 'team', catLabel: 'Team & Ownership Readiness', catNum: 3,\n      q: 'How many shipments or deliveries does this touch per month?',\n      why: 'Volume changes the payback math, and how much guardrail testing is needed before go-live.',\n      opts: [{ l: 'Under 200', s: 1 }, { l: '200\u20131,000', s: 2 }, { l: '1,000+', s: 3 }]\n    },\n    {\n      cat: 'risk', catLabel: 'Risk & Governance Readiness', catNum: 4,\n      q: 'Does this workflow touch billing, settlement, or customer-facing decisions?',\n      why: 'Workflows tied to money movement or customer communication need more review cycles before a system can be trusted to flag or act.',\n      opts: [{ l: 'Yes, heavily', s: 1 }, { l: 'Some', s: 2 }, { l: 'Minimal', s: 3 }]\n    },\n    {\n      cat: 'risk', catLabel: 'Risk & Governance Readiness', catNum: 4,\n      q: 'Do you review delivery or settlement discrepancies today?',\n      why: 'An existing review process means there\u2019s less governance work to bolt on before this can go live.',\n      opts: [{ l: 'No', s: 1 }, { l: 'Ad hoc', s: 2 }, { l: 'Formal process', s: 3 }]\n    }\n  ];\n\n  var state = {\n    workflowIndex: null,\n    workflowText: null,\n    currentStep: -1, \/\/ -1 is workflow selection, 0..7 are questions\n    answers: new Array(QUESTIONS.length).fill(null),\n    scores: { process:0, data:0, team:0, risk:0 },\n    totalScore: 0\n  };\n\n  var elWrapper    = document.getElementById(uid);\n  var elProgFill   = document.getElementById('progressFill_' + uid);\n  var elBackBtn    = document.getElementById('qBack_' + uid);\n  var elQView      = document.getElementById('questionView_' + uid);\n  var elResView    = document.getElementById('resultView_' + uid);\n  var elDoneView   = document.getElementById('doneView_' + uid);\n  var elSideRingArc= document.getElementById('sideRingArc_' + uid);\n  var elSideRingNum= document.getElementById('sideRingNum_' + uid);\n  var elCatList    = document.getElementById('catList_' + uid);\n\n  var SIDE_CIRC = 402;\n  var RES_CIRC = 245;\n\n  function recalculate() {\n    var totals = { process:0, data:0, team:0, risk:0 };\n    var counts = { process:0, data:0, team:0, risk:0 };\n    state.answers.forEach(function(ans, i){\n      if(ans !== null) {\n        totals[QUESTIONS[i].cat] += ans.s;\n        counts[QUESTIONS[i].cat]++;\n      }\n    });\n    state.scores = totals;\n    state.totalScore = totals.process + totals.data + totals.team + totals.risk;\n    return { totals: totals, counts: counts };\n  }\n\n  function getBand(score) {\n    if (score >= 18) {\n      return { key: 'pilot', label: 'Pilot-ready', color: '#23C775', sub: 'Strong scores across the board \u2014 ready to scope now.' };\n    } else if (score >= 10) {\n      return { key: 'close', label: 'Close, with gaps', color: '#F2A93B', sub: 'Within range. One or two areas need closing before scoping.' };\n    } else {\n      return { key: 'early', label: 'Early stage', color: '#8A909C', sub: 'Foundational gaps to address before scoping a build.' };\n    }\n  }\n\n  function renderSidebar() {\n    var calc = recalculate();\n    var total = state.totalScore;\n    elSideRingNum.textContent = total;\n    var offset = SIDE_CIRC - (SIDE_CIRC * (total \/ 24));\n    elSideRingArc.style.strokeDashoffset = offset;\n    elSideRingArc.style.stroke = total >= 18 ? '#23C775' : (total >= 10 ? '#7C94FF' : (total > 0 ? '#F2A93B' : '#7C94FF'));\n\n    var html = '';\n    CATEGORIES.forEach(function(cat){\n      var score = calc.totals[cat.id];\n      var isAnswered = calc.counts[cat.id] > 0;\n      var pct = Math.round((score \/ cat.max) * 100);\n      var color = isAnswered ? (pct >= 80 ? '#23C775' : (pct >= 50 ? '#7C94FF' : '#F2A93B')) : 'var(--line-dark)';\n\n      html += '<div class=\"inno-cat-row' + (isAnswered ? ' active' : '') + '\">' +\n        '<div class=\"top-row\">' +\n          '<span class=\"name\">' + cat.label + '<\/span>' +\n          '<span class=\"val\">' + (isAnswered ? score + '\/' + cat.max : '&mdash;') + '<\/span>' +\n        '<\/div>' +\n        '<div class=\"inno-cat-track\"><div class=\"inno-cat-fill\" style=\"width:' + (isAnswered ? pct : 0) + '%; background:' + color + ';\"><\/div><\/div>' +\n      '<\/div>';\n    });\n    elCatList.innerHTML = html;\n  }\n\n  function renderWorkflowSelection() {\n    state.currentStep = -1;\n    elBackBtn.hidden = true;\n    elProgFill.style.width = '0%';\n    elQView.hidden = false;\n    elResView.hidden = true;\n    elDoneView.hidden = true;\n\n    var html = '<div class=\"inno-q-step\">' +\n      '<p class=\"inno-intro-eyebrow\">STEP 1 OF 2 &middot; SELECT LOGISTICS WORKFLOW<\/p>' +\n      '<h2 class=\"inno-q-text\">Which workflow are you evaluating for AI automation?<\/h2>' +\n      '<p style=\"font-size:15px; color:var(--text-dim); margin-bottom:20px;\">Select the operational area you want to assess for AI readiness:<\/p>' +\n      '<div class=\"inno-q-options\">';\n\n    WORKFLOW_OPTIONS.forEach(function(wf, idx){\n      var isPicked = state.workflowIndex === idx;\n      html += '<button type=\"button\" class=\"inno-q-opt' + (isPicked ? ' picked' : '') + '\" data-wf-idx=\"' + idx + '\">' +\n        '<span>' + wf + '<\/span>' +\n        '<span class=\"chk\"><\/span>' +\n      '<\/button>';\n    });\n\n    html += '<\/div><\/div>';\n    elQView.innerHTML = html;\n\n    elQView.querySelectorAll('.inno-q-opt').forEach(function(btn){\n      btn.addEventListener('click', function(){\n        var idx = parseInt(btn.getAttribute('data-wf-idx'), 10);\n        state.workflowIndex = idx;\n        state.workflowText = WORKFLOW_OPTIONS[idx];\n        elQView.querySelectorAll('.inno-q-opt').forEach(function(b){ b.classList.remove('picked'); });\n        btn.classList.add('picked');\n        setTimeout(function(){\n          state.currentStep = 0;\n          renderQuestion();\n        }, 180);\n      });\n    });\n  }\n\n  function renderQuestion() {\n    var idx = state.currentStep;\n    var q = QUESTIONS[idx];\n    var picked = state.answers[idx];\n\n    elBackBtn.hidden = false;\n    elProgFill.style.width = (((idx + 1) \/ QUESTIONS.length) * 100) + '%';\n\n    var html = '<div class=\"inno-q-step\">' +\n      '<div style=\"display:inline-flex; align-items:center; gap:8px; font-family:\\'IBM Plex Mono\\',monospace; font-size:12px; background:var(--fog-2); border:1px solid var(--line); padding:6px 14px; border-radius:20px; margin-bottom:16px;\">' +\n        'EVALUATING: <b style=\"color:var(--text);\">' + state.workflowText + '<\/b> <button type=\"button\" id=\"changeWfBtn_' + uid + '\" style=\"background:none; border:none; color:var(--blue); text-decoration:underline; cursor:pointer; font-family:inherit; font-weight:600; padding:0;\">change<\/button>' +\n      '<\/div>' +\n      '<p class=\"inno-q-cat\"><span class=\"n\">Category ' + q.catNum + ' of 4<\/span> ' + q.catLabel.toUpperCase() + '<\/p>' +\n      '<p class=\"inno-q-meta\">QUESTION ' + (idx + 1) + ' OF ' + QUESTIONS.length + '<\/p>' +\n      '<h2 class=\"inno-q-text\">' + q.q + '<\/h2>' +\n      '<div class=\"inno-q-options\">';\n\n    q.opts.forEach(function(opt, optIdx){\n      var isPicked = picked && picked.l === opt.l;\n      html += '<button type=\"button\" class=\"inno-q-opt' + (isPicked ? ' picked' : '') + '\" data-opt-idx=\"' + optIdx + '\">' +\n        '<span>' + opt.l + '<\/span>' +\n        '<span class=\"chk\"><\/span>' +\n      '<\/button>';\n    });\n\n    html += '<\/div>' +\n      '<p class=\"inno-q-why\"><b>WHY WE ASK: <\/b> ' + q.why + '<\/p>' +\n    '<\/div>';\n\n    elQView.innerHTML = html;\n\n    document.getElementById('changeWfBtn_' + uid).addEventListener('click', renderWorkflowSelection);\n\n    elQView.querySelectorAll('.inno-q-opt').forEach(function(btn){\n      btn.addEventListener('click', function(){\n        var optIdx = parseInt(btn.getAttribute('data-opt-idx'), 10);\n        state.answers[idx] = q.opts[optIdx];\n        renderSidebar();\n        elQView.querySelectorAll('.inno-q-opt').forEach(function(b){ b.classList.remove('picked'); });\n        btn.classList.add('picked');\n        setTimeout(function(){\n          if (state.currentStep < QUESTIONS.length - 1) {\n            state.currentStep++;\n            renderQuestion();\n          } else {\n            showResults();\n          }\n        }, 220);\n      });\n    });\n  }\n\n  function getWeakestInfo(totals) {\n    var minVal = 999;\n    CATEGORIES.forEach(function(c){\n      if(totals[c.id] < minVal) minVal = totals[c.id];\n    });\n\n    var tied = CATEGORIES.filter(function(c){\n      return totals[c.id] === minVal;\n    });\n\n    var label = '';\n    var isAre = 'is';\n    if(tied.length === 1) {\n      label = tied[0].label;\n      isAre = 'is';\n    } else if(tied.length === 2) {\n      label = tied[0].label + ' and ' + tied[1].label;\n      isAre = 'are';\n    } else {\n      var last = tied[tied.length - 1].label;\n      var rest = tied.slice(0, -1).map(function(c){ return c.label; }).join(', ');\n      label = rest + ', and ' + last;\n      isAre = 'are';\n    }\n\n    return { label: label, minVal: minVal, isAre: isAre, tiedCount: tied.length };\n  }\n\n  function showResults() {\n    elQView.hidden = true;\n    elBackBtn.hidden = true;\n    elResView.hidden = false;\n    elProgFill.style.width = '100%';\n\n    var calc = recalculate();\n    var band = getBand(state.totalScore);\n    var weakest = getWeakestInfo(calc.totals);\n\n    document.getElementById('resultMeta_' + uid).textContent = 'YOUR RESULTS \\u00b7 ' + state.workflowText.toUpperCase();\n    document.getElementById('resultRingNum_' + uid).textContent = state.totalScore;\n    var arc = document.getElementById('resultRingArc_' + uid);\n    var offset = RES_CIRC - (RES_CIRC * (state.totalScore \/ 24));\n    arc.style.strokeDashoffset = offset;\n    arc.style.stroke = band.color;\n\n    document.getElementById('resultBand_' + uid).textContent = band.label;\n    document.getElementById('resultBand_' + uid).style.color = band.color;\n    document.getElementById('resultSub_' + uid).textContent = band.sub;\n\n    var gapTitle = weakest.tiedCount > 1 ? 'Primary readiness gaps: ' : 'Primary readiness gap: ';\n    document.getElementById('gapCallout_' + uid).innerHTML =\n      '<strong>' + gapTitle + weakest.label + ' (' + weakest.minVal + '\/6).<\/strong> ' +\n      'Logistics operations that resolve their lowest-scoring foundational category first cut implementation timelines by ~50%.';\n  }\n\n  \/\/ Back button\n  elBackBtn.addEventListener('click', function(){\n    if(state.currentStep > 0) {\n      state.currentStep--;\n      renderQuestion();\n    } else {\n      renderWorkflowSelection();\n    }\n  });\n\n  \/\/ Lead Submission\n  document.getElementById('leadForm_' + uid).addEventListener('submit', function(e){\n    e.preventDefault();\n    var btn = document.getElementById('submitBtn_' + uid);\n    btn.disabled = true;\n    btn.textContent = 'Generating personalized report...';\n\n    var firstName = document.getElementById('leadFirstName_' + uid).value.trim();\n    var lastName  = document.getElementById('leadLastName_' + uid).value.trim();\n    var email     = document.getElementById('leadEmail_' + uid).value.trim();\n    var company   = document.getElementById('leadCompany_' + uid).value.trim();\n    var fullName  = (firstName + ' ' + lastName).trim();\n\n    var calc = recalculate();\n    var band = getBand(state.totalScore);\n    var weakest = getWeakestInfo(calc.totals);\n\n    var categoryPayload = CATEGORIES.map(function(cat){\n      var s = calc.totals[cat.id];\n      var pct = Math.round((s \/ cat.max) * 100);\n      var color = pct >= 80 ? '#23C775' : (pct >= 50 ? '#7C94FF' : '#F2A93B');\n      return {\n        name: cat.label,\n        score: s + '\/' + cat.max,\n        pct: pct,\n        color: color\n      };\n    });\n\n    var answersPayload = QUESTIONS.map(function(q, i){\n      return {\n        question: q.q,\n        answer: state.answers[i] ? state.answers[i].l : 'Unanswered'\n      };\n    });\n\n    var formData = new FormData();\n    formData.append('action', 'innovature_submit_assessment');\n    formData.append('nonce', (typeof innovature_ajax !== 'undefined') ? innovature_ajax.nonce : '');\n    formData.append('tool_id', 'logistics-readiness');\n    formData.append('assessment_title', 'Logistics AI Readiness Assessment');\n    formData.append('first_name', firstName);\n    formData.append('last_name', lastName);\n    formData.append('name', fullName);\n    formData.append('email', email);\n    formData.append('company', company);\n    formData.append('workflow_index', state.workflowIndex);\n    formData.append('workflow', state.workflowText);\n    formData.append('score_summary', state.totalScore + ' \/ 24 (' + band.label + ')');\n    formData.append('band_label', band.label);\n    formData.append('band_desc', band.sub);\n    formData.append('gap_callout', weakest.label + ' (' + weakest.minVal + '\/6)');\n    formData.append('weakest_category', weakest.label);\n    formData.append('total_score', state.totalScore);\n    formData.append('cta_url', ctaUrl);\n\n    categoryPayload.forEach(function(c, i){\n      formData.append('category_scores[' + i + '][name]', c.name);\n      formData.append('category_scores[' + i + '][score]', c.score);\n      formData.append('category_scores[' + i + '][pct]', c.pct);\n      formData.append('category_scores[' + i + '][color]', c.color);\n    });\n\n    answersPayload.forEach(function(a, i){\n      formData.append('answers_list[' + i + '][question]', a.question);\n      formData.append('answers_list[' + i + '][answer]', a.answer);\n    });\n\n    var ajaxUrl = (typeof innovature_ajax !== 'undefined') ? innovature_ajax.ajax_url : '\/wp-admin\/admin-ajax.php';\n\n    fetch(ajaxUrl, {\n      method: 'POST',\n      body: formData\n    }).catch(function(err){\n      console.log('Submission handled:', err);\n    });\n\n    setTimeout(function(){\n      elResView.hidden = true;\n      elDoneView.hidden = false;\n      document.getElementById('sentEmail_' + uid).textContent = email;\n\n      var breakdownHtml = '';\n      categoryPayload.forEach(function(c){\n        breakdownHtml += '<div class=\"inno-breakdown-row\">' +\n          '<span class=\"inno-breakdown-name\">' + c.name + '<\/span>' +\n          '<div class=\"inno-breakdown-track\"><div class=\"inno-breakdown-fill\" style=\"width:' + c.pct + '%; background:' + c.color + ';\"><\/div><\/div>' +\n          '<span class=\"inno-breakdown-num mono\" style=\"color:' + c.color + ';\">' + c.score + '<\/span>' +\n        '<\/div>';\n      });\n      document.getElementById('breakdownFinal_' + uid).innerHTML = breakdownHtml;\n    }, 350);\n  });\n\n  renderSidebar();\n  renderWorkflowSelection();\n})();\n<\/script>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-35b506c e-flex e-con-boxed e-con e-parent\" data-id=\"35b506c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n    <div class=\"xs_social_share_widget xs_share_url after_content \t\tmain_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content\">\n\n\t\t\n        <ul>\n\t\t\t        <\/ul>\n    <\/div> \n","protected":false},"excerpt":{"rendered":"<p>Innovature &#8211; Logistics AI Readiness Assessment BEFORE YOU START Which workflow are you evaluating? Choose the workflow where AI could make the biggest difference to your operation. Every question that follows will evaluate your readiness to apply AI to this workflow.<\/p>","protected":false},"author":11,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"postBodyCss":"","postBodyMargin":[],"postBodyPadding":[],"postBodyBackground":{"backgroundType":"classic","gradient":""},"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-39594","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Logistics AI Readiness Assessment | Innovature<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/innovature.ai\/nl\/logistics-ai-readiness-assessment\/\" \/>\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Logistics AI Readiness Assessment | Innovature\" \/>\n<meta property=\"og:description\" content=\"Innovature &#8211; Logistics AI Readiness Assessment BEFORE YOU START Which workflow are you evaluating? Choose the workflow where AI could make the biggest difference to your operation. Every question that follows will evaluate your readiness to apply AI to this workflow.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/innovature.ai\/nl\/logistics-ai-readiness-assessment\/\" \/>\n<meta property=\"og:site_name\" content=\"Innovature\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/innovature\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-30T09:06:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/innovature.ai\/wp-content\/uploads\/2024\/02\/lgo.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@Innovature_ai\" \/>\n<meta name=\"twitter:label1\" content=\"Geschatte leestijd\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minuut\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/innovature.ai\\\/logistics-ai-readiness-assessment\\\/\",\"url\":\"https:\\\/\\\/innovature.ai\\\/logistics-ai-readiness-assessment\\\/\",\"name\":\"Logistics AI Readiness Assessment | Innovature\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/innovature.ai\\\/#website\"},\"datePublished\":\"2026-09-11T05:57:39+00:00\",\"dateModified\":\"2026-09-30T09:06:31+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/innovature.ai\\\/logistics-ai-readiness-assessment\\\/#breadcrumb\"},\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/innovature.ai\\\/logistics-ai-readiness-assessment\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/innovature.ai\\\/logistics-ai-readiness-assessment\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/innovature.ai\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"logistics-ai-readiness-assessment\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/innovature.ai\\\/#website\",\"url\":\"https:\\\/\\\/innovature.ai\\\/\",\"name\":\"Innovature\",\"description\":\"Innovate the future\",\"publisher\":{\"@id\":\"https:\\\/\\\/innovature.ai\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/innovature.ai\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nl-NL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/innovature.ai\\\/#organization\",\"name\":\"Innovature\",\"url\":\"https:\\\/\\\/innovature.ai\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\\\/\\\/innovature.ai\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/innovature.ai\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/inn_logo2-1.png\",\"contentUrl\":\"https:\\\/\\\/innovature.ai\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/inn_logo2-1.png\",\"width\":187,\"height\":62,\"caption\":\"Innovature\"},\"image\":{\"@id\":\"https:\\\/\\\/innovature.ai\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/innovature\\\/\",\"https:\\\/\\\/x.com\\\/Innovature_ai\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Logistics AI Readiness Assessment | Innovature","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/innovature.ai\/nl\/logistics-ai-readiness-assessment\/","og_locale":"nl_NL","og_type":"article","og_title":"Logistics AI Readiness Assessment | Innovature","og_description":"Innovature &#8211; Logistics AI Readiness Assessment BEFORE YOU START Which workflow are you evaluating? Choose the workflow where AI could make the biggest difference to your operation. Every question that follows will evaluate your readiness to apply AI to this workflow.","og_url":"https:\/\/innovature.ai\/nl\/logistics-ai-readiness-assessment\/","og_site_name":"Innovature","article_publisher":"https:\/\/www.facebook.com\/innovature\/","article_modified_time":"2026-09-30T09:06:31+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/innovature.ai\/wp-content\/uploads\/2024\/02\/lgo.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_site":"@Innovature_ai","twitter_misc":{"Geschatte leestijd":"1 minuut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/innovature.ai\/logistics-ai-readiness-assessment\/","url":"https:\/\/innovature.ai\/logistics-ai-readiness-assessment\/","name":"Logistics AI Readiness Assessment | Innovature","isPartOf":{"@id":"https:\/\/innovature.ai\/#website"},"datePublished":"2026-09-11T05:57:39+00:00","dateModified":"2026-09-30T09:06:31+00:00","breadcrumb":{"@id":"https:\/\/innovature.ai\/logistics-ai-readiness-assessment\/#breadcrumb"},"inLanguage":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/innovature.ai\/logistics-ai-readiness-assessment\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/innovature.ai\/logistics-ai-readiness-assessment\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/innovature.ai\/"},{"@type":"ListItem","position":2,"name":"logistics-ai-readiness-assessment"}]},{"@type":"WebSite","@id":"https:\/\/innovature.ai\/#website","url":"https:\/\/innovature.ai\/","name":"Innovature","description":"Innovate the future","publisher":{"@id":"https:\/\/innovature.ai\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/innovature.ai\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nl-NL"},{"@type":"Organization","@id":"https:\/\/innovature.ai\/#organization","name":"Innovature","url":"https:\/\/innovature.ai\/","logo":{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/innovature.ai\/#\/schema\/logo\/image\/","url":"https:\/\/innovature.ai\/wp-content\/uploads\/2022\/04\/inn_logo2-1.png","contentUrl":"https:\/\/innovature.ai\/wp-content\/uploads\/2022\/04\/inn_logo2-1.png","width":187,"height":62,"caption":"Innovature"},"image":{"@id":"https:\/\/innovature.ai\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/innovature\/","https:\/\/x.com\/Innovature_ai"]}]}},"_links":{"self":[{"href":"https:\/\/innovature.ai\/nl\/wp-json\/wp\/v2\/pages\/39594","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innovature.ai\/nl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/innovature.ai\/nl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/innovature.ai\/nl\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/innovature.ai\/nl\/wp-json\/wp\/v2\/comments?post=39594"}],"version-history":[{"count":50,"href":"https:\/\/innovature.ai\/nl\/wp-json\/wp\/v2\/pages\/39594\/revisions"}],"predecessor-version":[{"id":40494,"href":"https:\/\/innovature.ai\/nl\/wp-json\/wp\/v2\/pages\/39594\/revisions\/40494"}],"wp:attachment":[{"href":"https:\/\/innovature.ai\/nl\/wp-json\/wp\/v2\/media?parent=39594"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}