/* ============================================================ NICKLPASS ASSESSMENTS — hosted app (single file) Upload to Webflow Assets as: nicklpass-assessments.js.txt Set your Web3Forms key in WEB3FORMS_ACCESS_KEY below. Each page:
(subpages only) ============================================================ */ (function(){ var NP_MARKUP = "\n
\n
\n
Free \u00b7 5-minute assessments
\n

Find the savings hiding in your stack.

\n

Pick the check that fits your role. Answer a few quick questions and get your score, your biggest opportunities, and a clear next step \u2014 no guesswork.

\n
\n
\n
\n\n\n
\n \n\n \n
\n
\n

\n

\n
\n 20 questions\n About 5 minutes\n Instant score\n
\n
\n
\ud83d\udd12 Unlock your assessment
\n
Enter your details to start. Your score shows on screen the moment you finish \u2014 nothing to wait for.
\n
\n \n \n
Please enter a valid work email to unlock the assessment.
\n
\n
\n
\n
\n
\n
\n \n \n
\n \n

We use your details only to send occasional insights and to talk about your stack. No spam \u2014 opt out anytime.

\n
\n
\n
\n\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n \n
\n
\n
\n
\n
\n
0/100
\n
\n
\n
0255075100
\n
\n
\n
\n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n\n
    \n

    \n

    \n

    \n \n
    \n\n
    \n How we score this\n
    \n

    Every answer earns points by how much risk or waste it signals: A = 0, B = 2, C = 4, D = 5. With 20 questions, the maximum is 100. A higher score means more recoverable spend and more risk sitting in your stack.

    \n
    What your band means
    \n
    0\u201325 \u00b7 Strong / optimized.
    \n
    26\u201350 \u00b7 Gaps forming.
    \n
    51\u201375 \u00b7 High waste / risk.
    \n
    76\u2013100 \u00b7 Critical exposure.
    \n
    The research behind the questions
    \n
    \n

    Note: figures are drawn from the published benchmark reports above, not a live scrape \u2014 confirm against the latest editions before publishing. Use the score to prioritize, then let Nicklpass measure your real numbers.

    \n
    \n
    \n
    \n\n
    Confidential \u00b7 Nicklpass
    \n
    "; function npBoot(){ var mount = document.getElementById('nicklpass-assessments'); if(mount && !document.getElementById('lmGrid')){ mount.innerHTML = NP_MARKUP; } if(!document.getElementById('lmGrid')){ console.warn('[Nicklpass] No container found. Add
    to the page.'); return; } const PTS=[0,2,4,5]; // A,B,C,D /* ================= EMAIL DELIVERY (Web3Forms) ================= Emails go to the inbox tied to your Web3Forms access key (set this up for marketing@nicklpass.com at web3forms.com). Paste the key below — nothing sends until it is set. */ const WEB3FORMS_ACCESS_KEY = "bd652d58-962f-4a50-92f7-a2c3b89d4163"; const WEB3FORMS_ENDPOINT = "https://api.web3forms.com/submit"; function sendMail(payload){ if(!WEB3FORMS_ACCESS_KEY || WEB3FORMS_ACCESS_KEY.indexOf("YOUR_")===0){ console.warn("[Nicklpass] Web3Forms key not set — email not sent. Payload was:", payload); return; } try{ fetch(WEB3FORMS_ENDPOINT,{ method:"POST", headers:{"Content-Type":"application/json","Accept":"application/json"}, body:JSON.stringify(Object.assign({ access_key:WEB3FORMS_ACCESS_KEY, from_name:"Nicklpass Assessments" }, payload)) }).catch(function(e){ console.warn("[Nicklpass] Email send failed:", e); }); }catch(e){ console.warn("[Nicklpass] Email send failed:", e); } } let leadInfo=null; // holds the details captured at the paywall for the completion email /* ================= DATA: 8 assessments ================= */ const M=[ /* ---------- 1. SaaS Ops ---------- */ { id:"saasops", num:"01", cat:"SaaS Operations", title:"SaaS Waste & Shelfware Assessment™", tag:"How much of your SaaS budget is quietly wasted?", scoreLabel:"Your SaaS Waste Exposure Score", ctx:{label:"Number of employees", ph:"e.g. 500"}, research:["Zylo — State of SaaS Management","Flexera — State of ITAM","BetterCloud / Productiv — State of SaaSOps","Gartner — Software Asset Management"], sections:[ {t:"Stack Visibility", q:[ {q:"Can you see every SaaS app your company pays for?", o:["Yes, from one central system","Mostly","We track it manually","No — not full visibility"]}, {q:"Do you know your exact number of active SaaS apps?", o:["Yes, an exact number","A rough idea","Not really","No idea"]}, {q:"Is your software inventory updated automatically?", o:["Yes, automatically","Mostly","Spreadsheet-based","No"]}]}, {t:"Usage Data", q:[ {q:"Do you have real usage data for each tool?", o:["Yes, granular","Some","Little","None"]}, {q:"Can you classify tools as high, medium, or low use?", o:["Yes, automatically","Mostly","Manually","No"]}, {q:"How often do you find tools nobody uses?", o:["Almost never","Occasionally","Every quarter","Frequently"]}]}, {t:"License Efficiency", q:[ {q:"How many paid seats sit unused?", o:["Almost none","A few","Many","No idea"]}, {q:"Can you reclaim unused licenses easily?", o:["Automatically","Through reports","Manually","No process"]}, {q:"Do you reassign idle seats before buying new ones?", o:["Always","Usually","Sometimes","Rarely"]}]}, {t:"Offboarding", q:[ {q:"When someone leaves, how fast are licenses removed?", o:["Same day, automatically","Within a week","Eventually","Rarely"]}, {q:"Are you confident no ex-employees keep paid access?", o:["Certain","Fairly","Low","No"]}, {q:"Do departures trigger a license review?", o:["Automatically","Usually","Sometimes","Never"]}]}, {t:"Duplicate Tools", q:[ {q:"Do teams buy overlapping tools?", o:["Never","Rarely","Sometimes","Frequently"]}, {q:"How often do you find duplicate subscriptions?", o:["Almost never","Occasionally","Every quarter","Frequently"]}, {q:"Does every tool have a clear owner?", o:["Yes, all","Most","Some","Many don't"]}]}, {t:"Renewals & Spend", q:[ {q:"Do you review usage before renewing?", o:["Always","Usually","Sometimes","Rarely"]}, {q:"How much notice do you get before renewals?", o:["90+ days","60–90 days","Under 60 days","Often late"]}, {q:"Can you see total SaaS spend quickly?", o:["Immediately","Within a day","After analysis","No"]}]}, {t:"Reporting", q:[ {q:"Can you show leadership where SaaS is wasted?", o:["Yes, with reporting","Mostly","Manually","No"]}, {q:"If your CFO asked 'where can we cut 20% of SaaS?', could you answer?", o:["Immediately","Within days","After analysis","No"]}]} ], bands:[ {n:"Lean SaaS Stack",tone:"good",b:["Strong visibility across the stack","Low shelfware and unused seats","Clean, automated offboarding"],note:"Opportunity: automate reclamation and benchmark your pricing."}, {n:"Waste Forming",tone:"warn",b:["Some shelfware slipping through","Manual tracking that drifts out of date","Inconsistent seat reclamation"]}, {n:"High SaaS Waste",tone:"high",b:["Unused seats you're still paying for","Duplicate tools across teams","Slow offboarding and weak renewal control"]}, {n:"Critical Waste Exposure",tone:"crit",b:["No reliable app count or spend total","No answer on what to cut","Large recoverable spend sitting idle"]} ], oppsHead:"Your Biggest Opportunities", opps:[{n:"Reclaim Unused Seats",d:"Recover the licenses nobody logs into."},{n:"Kill Duplicate Tools",d:"Consolidate overlapping subscriptions."},{n:"Fix Offboarding Leaks",d:"Auto-remove access when people leave."},{n:"Control Renewals",d:"Get a negotiation window before every renewal."}], cta:{head:"Get Your Free SaaS Waste Review",sub:"Nicklpass helps you:",bul:"discover hidden SaaS spend · reclaim unused licenses · kill duplicate tools · negotiate better rates"} }, /* ---------- 2. Procurement (verbatim spec) ---------- */ { id:"procurement", num:"02", cat:"Procurement / Sourcing", title:"SaaS Vendor Spend Optimization Assessment™", tag:"Are you maximizing SaaS savings — or leaving money on the table?", scoreLabel:"Your SaaS Procurement Maturity Score", ctx:{label:"Annual software spend", ph:"e.g. $2M"}, research:["Gartner — Strategic Sourcing Research","Deloitte — Global CPO Survey","WorldCC — Contracting Excellence Research","Flexera — State of ITAM"], sections:[ {t:"SaaS Spend Visibility", q:[ {q:"Can procurement see all SaaS vendors the company pays for?", o:["Yes, from one centralized system","Mostly","Through invoices and spreadsheets","We do not have complete visibility"]}, {q:"How quickly can procurement answer 'How much do we spend on SaaS annually?'", o:["Immediately","Within one day","After manual analysis","We cannot answer confidently"]}, {q:"Does procurement know every SaaS contract owner?", o:["Yes","Mostly","Some contracts are unclear","Many contracts have no owner"]}]}, {t:"Contract Management", q:[ {q:"Are all SaaS contracts stored in one central location?", o:["Yes","Mostly","Some are scattered","Contracts are difficult to find"]}, {q:"How much notice does procurement have before SaaS renewals?", o:["More than 90 days","60–90 days","Less than 60 days","We often discover renewals late"]}, {q:"Does procurement review SaaS usage before renewing contracts?", o:["Always","Usually","Sometimes","Rarely"]}]}, {t:"Negotiation Power", q:[ {q:"Does procurement know the market price before negotiating SaaS contracts?", o:["Always","Usually","Sometimes","Rarely"]}, {q:"Can procurement compare pricing across similar SaaS vendors?", o:["Easily","Mostly","Manually","No"]}, {q:"Does procurement negotiate before renewal dates approach?", o:["90+ days before renewal","60 days before","Around renewal time","After renewal discussions start"]}]}, {t:"Decentralized Buying", q:[ {q:"Can departments purchase SaaS without procurement involvement?", o:["Never","Rarely","Sometimes","Frequently"]}, {q:"How often does procurement discover duplicate SaaS purchases?", o:["Almost never","Occasionally","Every few months","Frequently"]}, {q:"Does procurement have a preferred vendor list?", o:["Yes, actively used","Mostly","Informal","No"]}]}, {t:"Renewal Optimization", q:[ {q:"Before renewing SaaS, do you check user adoption?", o:["Always","Usually","Sometimes","Rarely"]}, {q:"Can procurement identify unused licenses before renewal?", o:["Automatically","Through reports","Manually","Cannot"]}, {q:"Does procurement have enough time to negotiate better terms?", o:["Always","Usually","Sometimes","Rarely"]}]}, {t:"Vendor Risk Management", q:[ {q:"Does procurement evaluate SaaS vendors for security requirements?", o:["Always","Usually","Sometimes","Rarely"]}, {q:"Can procurement identify critical SaaS vendors?", o:["Yes","Mostly","Partially","No"]}]}, {t:"Executive Reporting", q:[ {q:"Can procurement show SaaS savings achieved?", o:["Yes, with reporting","Mostly","Manually","No"]}, {q:"Can procurement identify the biggest SaaS savings opportunities today?", o:["Immediately","Within days","Within weeks","No"]}, {q:"If your CFO asked 'Where can we save $500k in SaaS spending?', could you answer?", o:["Immediately","Within days","After analysis","No"]}]} ], bands:[ {n:"Mature SaaS Procurement",tone:"good",b:["Strong vendor visibility","Good negotiation processes","Clear contract ownership"],note:"Opportunity: increase automation and benchmarking."}, {n:"Procurement Efficiency Gaps",tone:"warn",b:["Manual contract tracking","Inconsistent buying processes","Missed negotiation opportunities"]}, {n:"High SaaS Spend Leakage Risk",tone:"high",b:["Poor renewal control","Weak vendor leverage","Duplicate purchases and unclear contracts"]}, {n:"Critical SaaS Procurement Risk",tone:"crit",b:["You can't say what contracts you have","Or when they renew and who owns them","Or whether you're paying fair prices"]} ], oppsHead:"Your Biggest Opportunities", opps:[{n:"Improve Spend Visibility",d:"Know every SaaS contract and owner."},{n:"Control Renewals",d:"Create negotiation windows before contracts expire."},{n:"Reduce Duplicate Tools",d:"Consolidate overlapping vendors."},{n:"Increase Negotiation Power",d:"Use usage data and benchmarks."}], cta:{head:"Get Your Free SaaS Spend Optimization Review",sub:"Nicklpass helps procurement teams:",bul:"discover hidden SaaS spend · identify renewal risks · consolidate vendors · improve negotiation leverage"} }, /* ---------- 3. FinOps ---------- */ { id:"finops", num:"03", cat:"FinOps / Cost Optimization", title:"SaaS & AI Cost Efficiency Assessment™", tag:"Is your SaaS and AI spend governed as tightly as your cloud?", scoreLabel:"Your SaaS & AI FinOps Maturity Score", ctx:{label:"Number of employees", ph:"e.g. 500"}, research:["FinOps Foundation — State of FinOps","Flexera — State of the Cloud & ITAM","Zylo — State of SaaS Management","Gartner — Cost Optimization"], sections:[ {t:"Spend Visibility", q:[ {q:"Which spend do you fully govern today?", o:["Cloud, SaaS and AI","Cloud and SaaS","Cloud only","None fully"]}, {q:"Can you see total SaaS + AI spend in real time?", o:["Yes, a live dashboard","Mostly","After analysis","No"]}, {q:"Is SaaS + AI spend data centralized?", o:["Yes","Mostly","Scattered","No"]}]}, {t:"Cost Attribution", q:[ {q:"Can you attribute SaaS + AI cost to teams?", o:["Yes, cleanly","Partly","Barely","No"]}, {q:"Do you run showback or chargeback for software?", o:["Yes","Some","Manual","No"]}, {q:"Does each cost center own its software spend?", o:["Yes","Mostly","Some","No"]}]}, {t:"Utilization", q:[ {q:"Do you track utilization per tool?", o:["Yes, granular","Some","Little","No"]}, {q:"How much committed or prepaid spend goes unused?", o:["Almost none","A little","A fair bit","A lot"]}, {q:"Do cost decisions use real usage data?", o:["Always","Mostly","Rarely","Never"]}]}, {t:"AI Spend", q:[ {q:"Can you see all AI spend across teams?", o:["Yes","Mostly","Limited","No"]}, {q:"Can you answer 'what's our AI spend and its ROI'?", o:["Instantly","With some work","Not confidently","No"]}, {q:"Is AI spend growth under control?", o:["Yes","Steady","Fast","Out of control"]}]}, {t:"Forecasting", q:[ {q:"Can you forecast SaaS + AI spend accurately?", o:["Yes","Roughly","Not really","No"]}, {q:"Do surprise renewals break your forecast?", o:["Never","Rarely","Sometimes","Often"]}, {q:"Do you model savings scenarios?", o:["Yes","Sometimes","Rarely","No"]}]}, {t:"Optimization Process", q:[ {q:"Do you run a repeatable cost-optimization cycle?", o:["Yes","Mostly","Ad hoc","No"]}, {q:"Do you benchmark unit costs against peers?", o:["Yes","Sometimes","Rarely","No"]}, {q:"Do you act on waste findings quickly?", o:["Always","Usually","Sometimes","Rarely"]}]}, {t:"Reporting", q:[ {q:"Can you report software efficiency to leadership?", o:["Yes","Mostly","Manually","No"]}, {q:"If asked to cut 25% of software spend, could you?", o:["Immediately","Within days","After analysis","No"]}]} ], bands:[ {n:"Mature Software FinOps",tone:"good",b:["Full SaaS + AI visibility","Clean cost attribution to teams","Governed, forecastable AI spend"],note:"Opportunity: deepen benchmarking and automation."}, {n:"FinOps Gaps",tone:"warn",b:["Partial cost attribution","Limited AI visibility","Ad-hoc optimization"]}, {n:"High Software Cost Leakage",tone:"high",b:["Unused committed spend","Weak team-level attribution","Uncontrolled AI growth"]}, {n:"Critical Cost Governance Gap",tone:"crit",b:["SaaS and AI spend ungoverned","No attribution and no forecast","No answer on AI ROI"]} ], oppsHead:"Your Biggest Opportunities", opps:[{n:"Govern SaaS & AI Like Cloud",d:"Bring the same rigor to software spend."},{n:"Attribute Cost to Teams",d:"Make each team own its usage."},{n:"Cut Unused Committed Spend",d:"Recover idle prepaid capacity."},{n:"Benchmark Unit Costs",d:"See where you pay above market."}], cta:{head:"Get Your Free Software FinOps Review",sub:"Nicklpass helps FinOps teams:",bul:"unify SaaS + AI spend · attribute cost to teams · cut committed waste · benchmark against peers"} }, /* ---------- 4. Finance / FP&A ---------- */ { id:"finance", num:"04", cat:"Finance / FP&A", title:"Software Spend Control Assessment™", tag:"Can finance see, forecast, and defend every software dollar?", scoreLabel:"Your Software Spend Control Score", ctx:{label:"Annual software spend", ph:"e.g. $3M"}, research:["Deloitte — CFO / CPO Research","Gartner — SaaS Management","Flexera — State of ITAM","BetterCloud — State of SaaSOps"], sections:[ {t:"Visibility for Finance", q:[ {q:"Can finance see total software spend easily?", o:["Immediately","Within a day","After analysis","No"]}, {q:"Is software spend clean to categorize on the P&L?", o:["Clean and clear","Some effort","Messy","Nearly impossible"]}, {q:"Across how many cards or accounts is software spread?", o:["One place","A few","Many","No idea"]}]}, {t:"Budgeting & Forecasting", q:[ {q:"Can you forecast next year's software spend?", o:["Confidently","Roughly","Not really","No"]}, {q:"Do renewals blow the budget mid-quarter?", o:["Never","Rarely","Sometimes","Often"]}, {q:"Do you model software cost scenarios?", o:["Yes","Sometimes","Rarely","No"]}]}, {t:"Approval & Control", q:[ {q:"Do new software purchases need finance approval?", o:["Always","Usually","Sometimes","Rarely"]}, {q:"Are there spend caps per person or team?", o:["Yes, enforced","Mostly","Informal","No"]}, {q:"Can employees expense software freely?", o:["Never","Rarely","Sometimes","Frequently"]}]}, {t:"Renewals", q:[ {q:"Do you get advance notice of renewals?", o:["90+ days","60–90 days","Under 60 days","Often late"]}, {q:"Do you review value before renewing?", o:["Always","Usually","Sometimes","Rarely"]}, {q:"Can you cancel unused subscriptions easily?", o:["Yes","Mostly","Manually","No"]}]}, {t:"AI Spend", q:[ {q:"Can you see AI spend as its own line item?", o:["Yes","Mostly","It's buried","No"]}, {q:"If the board asked your AI ROI, could you answer?", o:["Yes","Partly","No","We don't track AI"]}, {q:"Is AI spend growing faster than budgeted?", o:["No","Slightly","Fast","Way over"]}]}, {t:"Savings & Accountability", q:[ {q:"How much pressure are you under to cut costs?", o:["None","Informal","A clear mandate","Aggressive targets"]}, {q:"Can you prove software savings you've achieved?", o:["Yes, with reporting","Mostly","Manually","No"]}, {q:"Do you know your biggest savings opportunities?", o:["Immediately","Within days","After analysis","No"]}]}, {t:"Reporting", q:[ {q:"Can you give leadership a clean software-spend view?", o:["Yes","Mostly","Manually","No"]}, {q:"If your CEO asked 'are we spending wisely on software?', could you prove it?", o:["Immediately","Within days","Within weeks","No"]}]} ], bands:[ {n:"Strong Spend Control",tone:"good",b:["Clean, instant visibility","Reliable forecasts","Enforced approvals and caps"],note:"Opportunity: automate reporting and savings tracking."}, {n:"Control Gaps",tone:"warn",b:["Messy categorization","Surprise renewals","Loose approval process"]}, {n:"High Spend Leakage",tone:"high",b:["Spend scattered across accounts","Weak forecasting","Uncontrolled renewals and hidden AI cost"]}, {n:"Critical Spend Blind Spot",tone:"crit",b:["Finance can't see the total","Can't forecast it","Can't defend it to leadership"]} ], oppsHead:"Your Biggest Opportunities", opps:[{n:"Centralize the Spend View",d:"One clean view of every software dollar."},{n:"Control Renewals & Approvals",d:"No more mid-quarter surprises."},{n:"Surface AI Spend",d:"Make AI a visible line item."},{n:"Prove Savings",d:"Report recovered spend to leadership."}], cta:{head:"Get Your Free Software Spend Control Review",sub:"Nicklpass helps finance teams:",bul:"give finance one clean view · control renewals & approvals · surface AI spend · prove savings"} }, /* ---------- 5. AI Spend & ROI ---------- */ { id:"ai", num:"05", cat:"AI Enablement", title:"AI Spend & ROI Assessment™", tag:"Are you getting value from AI — or just paying for it?", scoreLabel:"Your AI Spend Efficiency Score", ctx:{label:"Number of employees", ph:"e.g. 500"}, research:["Flexera — State of ITAM (AI visibility & waste)","FinOps Foundation — State of FinOps","Gartner — AI Adoption & Governance","Zylo — State of SaaS Management"], sections:[ {t:"AI Visibility", q:[ {q:"Do you know every AI tool your teams pay for?", o:["All of them","Most","Some","No"]}, {q:"Can you see total AI spend in one place?", o:["Yes","Mostly","Scattered","No"]}, {q:"Do you keep an inventory of AI tools?", o:["Yes, automatic","Mostly","Spreadsheet","No"]}]}, {t:"Shadow AI", q:[ {q:"Are employees expensing personal AI subscriptions?", o:["Never","Rarely","Some are","Lots are"]}, {q:"Can you detect unapproved AI tools?", o:["Immediately","Within days","Through audits","No"]}, {q:"Do teams adopt AI tools without approval?", o:["Never","Rarely","Sometimes","Constantly"]}]}, {t:"Overlap & Adoption", q:[ {q:"How many overlapping AI assistants do you pay for?", o:["Just one","Two","Several","Don't know"]}, {q:"Do you know who actually uses each AI seat?", o:["Yes, usage data","Mostly","Barely","No"]}, {q:"How many paid AI seats go unused?", o:["Almost none","A few","Many","No idea"]}]}, {t:"ROI Measurement", q:[ {q:"Can you measure ROI on AI tools?", o:["Yes","Mostly","Informally","No"]}, {q:"Do you tie AI spend to business outcomes?", o:["Yes","Partly","Rarely","No"]}, {q:"Can you tell which AI tools deliver value?", o:["Yes, reporting","Mostly","We guess","No"]}]}, {t:"Cost Trajectory", q:[ {q:"How fast is your AI spend growing?", o:["Flat","Steady","Fast","Exploding"]}, {q:"Is AI spend growth budgeted for?", o:["Yes","Mostly","Barely","No"]}, {q:"Do you review AI tools before renewal?", o:["Always","Usually","Sometimes","Rarely"]}]}, {t:"Governance", q:[ {q:"Do new AI tools require approval?", o:["Always","Usually","Sometimes","No"]}, {q:"Do you have an approved AI-tool list?", o:["Yes","Mostly","Informal","No"]}, {q:"Are AI licenses removed when people leave?", o:["Automatically","Within days","Manually","Rarely"]}]}, {t:"Reporting", q:[ {q:"Can you report AI spend and value to leadership?", o:["Yes","Mostly","Manually","No"]}, {q:"If your CFO asked 'what's our AI ROI?', could you answer?", o:["Immediately","Within days","After analysis","No"]}]} ], bands:[ {n:"AI Spend Under Control",tone:"good",b:["Full visibility into AI tools","Governed adoption","Measured ROI"],note:"Opportunity: sharpen ROI attribution."}, {n:"AI Waste Emerging",tone:"warn",b:["Some shadow AI","Overlapping seats","Informal ROI tracking"]}, {n:"High AI Spend Waste",tone:"high",b:["Unknown tools in use","Unused paid seats","No ROI proof and fast growth"]}, {n:"Critical AI Value Gap",tone:"crit",b:["Can't see your AI tools","Or spend, users, or value","Paying for AI you can't measure"]} ], oppsHead:"Your Biggest Opportunities", opps:[{n:"Discover Shadow AI",d:"Find every tool employees use."},{n:"Cut Overlapping Seats",d:"Stop paying for duplicate assistants."},{n:"Measure AI ROI",d:"Tie spend to real outcomes."},{n:"Govern AI Adoption",d:"Approve new tools before they sprawl."}], cta:{head:"Get Your Free AI Spend & ROI Review",sub:"Nicklpass helps AI teams:",bul:"discover all AI usage · cut overlapping seats · measure AI ROI · govern new AI adoption"} }, /* ---------- 6. IT Scaling ---------- */ { id:"it", num:"06", cat:"IT / Infrastructure", title:"IT License & Scaling Assessment™", tag:"Is rapid growth blowing up your license spend?", scoreLabel:"Your IT License Control Score", ctx:{label:"Number of employees", ph:"e.g. 500"}, research:["Flexera — State of ITAM","BetterCloud / Productiv — State of SaaSOps","Zylo — State of SaaS Management","Okta — Businesses at Work (identity)"], sections:[ {t:"Growth Pressure", q:[ {q:"How fast is your headcount growing?", o:["Flat","Steady","Fast","Very fast"]}, {q:"Has license spend outpaced headcount?", o:["Below growth","In line","Above it","Way above it"]}, {q:"Can IT keep up with new tool requests?", o:["Easily","Mostly","Struggling","No"]}]}, {t:"Onboarding / Offboarding", q:[ {q:"How smooth is license onboarding?", o:["Fully automated","Mostly","Manual","It's chaos"]}, {q:"How fast are licenses removed when people leave?", o:["Same day, auto","Within a week","Eventually","Rarely"]}, {q:"Do departures trigger a license review?", o:["Automatically","Usually","Sometimes","Never"]}]}, {t:"Orphaned Licenses", q:[ {q:"How many orphaned licenses from leavers?", o:["None","A few","Many","No idea"]}, {q:"Do you reassign idle seats before buying new?", o:["Always","Usually","Sometimes","Never"]}, {q:"Confident no ex-employees keep access?", o:["Certain","Fairly","Low","No"]}]}, {t:"Shadow IT", q:[ {q:"Do teams buy tools without IT?", o:["Never","Rarely","Often","Constantly"]}, {q:"Can you see apps outside IT's control?", o:["Fully","Mostly","Limited","No"]}, {q:"How often do you find unknown apps?", o:["Almost never","Occasionally","Every quarter","Frequently"]}]}, {t:"Visibility", q:[ {q:"Can you see every app the company pays for?", o:["Centralized","Mostly","Manual","No"]}, {q:"Do you have usage data per tool?", o:["Yes","Some","Little","None"]}, {q:"Is your app inventory current?", o:["Automatic","Mostly","Spreadsheet","No"]}]}, {t:"Renewals & Duplicates", q:[ {q:"Do teams run duplicate tools?", o:["Never","Rarely","Sometimes","Frequently"]}, {q:"Do you review usage before renewal?", o:["Always","Usually","Sometimes","Rarely"]}, {q:"Do you get advance renewal notice?", o:["90+ days","60–90 days","Under 60 days","Often late"]}]}, {t:"Reporting", q:[ {q:"Can you show leadership license efficiency?", o:["Yes","Mostly","Manually","No"]}, {q:"If asked 'can we support 2× headcount without 2× license cost?', could you answer?", o:["Immediately","Within days","After analysis","No"]}]} ], bands:[ {n:"Scalable IT Stack",tone:"good",b:["Automated on/offboarding","Low sprawl","Seats reused before buying"],note:"Opportunity: benchmark and negotiate."}, {n:"Scaling Friction",tone:"warn",b:["Manual offboarding","Some orphaned seats","Growing shadow IT"]}, {n:"High License Sprawl Risk",tone:"high",b:["Orphaned licenses from leavers","Shadow IT and duplicate tools","Spend outpacing headcount"]}, {n:"Critical License Control Gap",tone:"crit",b:["Growth is blowing up license spend","With no central visibility","And no reuse or control"]} ], oppsHead:"Your Biggest Opportunities", opps:[{n:"Automate On/Offboarding",d:"Grant and revoke access instantly."},{n:"Reclaim Orphaned Seats",d:"Recover licenses from leavers."},{n:"Surface Shadow IT",d:"See every app teams bought."},{n:"Control Duplicate Tools",d:"Consolidate overlapping spend."}], cta:{head:"Get Your Free IT License Review",sub:"Nicklpass helps IT teams:",bul:"automate on/offboarding · reclaim orphaned seats · surface shadow IT · control duplicate spend"} }, /* ---------- 7. RevOps (verbatim spec) ---------- */ { id:"revops", num:"07", cat:"RevOps / Sales Ops", title:"Revenue Stack Efficiency Assessment™", tag:"Is your GTM technology stack driving revenue — or draining budget?", scoreLabel:"Your Revenue Technology Efficiency Score", ctx:{label:"Number of sales reps", ph:"e.g. 60"}, research:["Gartner — Sales Technology Research","Salesforce — State of Sales Report","HubSpot — State of Sales Report","Flexera — State of ITAM"], sections:[ {t:"Revenue Technology Visibility", q:[ {q:"Can RevOps see every sales and marketing tool your company pays for?", o:["Yes, through a centralized system","Mostly","We track tools manually","We do not have complete visibility"]}, {q:"How many GTM applications does your company currently use?", o:["Less than 10","10–25","25–75","More than 75"]}, {q:"Does RevOps maintain a complete inventory of GTM software?", o:["Yes, automatically","Mostly","Spreadsheet-based","No"]}]}, {t:"Tool Adoption", q:[ {q:"Do you know whether sales reps actively use purchased tools?", o:["Yes, with usage data","Mostly","Through surveys","We do not know"]}, {q:"How often do you discover paid tools that teams rarely use?", o:["Almost never","Occasionally","Every quarter","Frequently"]}, {q:"Can RevOps identify which tools improve sales performance?", o:["Yes, through reporting","Mostly","Manually","No"]}]}, {t:"Sales Productivity", q:[ {q:"How many different tools does a sales representative use weekly?", o:["Less than 5","5–10","10–20","More than 20"]}, {q:"Do sales reps complain about too many tools?", o:["Never","Rarely","Sometimes","Frequently"]}, {q:"Are sales workflows connected between CRM, outreach, analytics, and AI tools?", o:["Fully connected","Mostly connected","Partially connected","Separate systems"]}]}, {t:"AI Sales Tool Management", q:[ {q:"Does RevOps know which AI sales tools employees use?", o:["Yes, fully tracked","Mostly","Limited visibility","Unknown"]}, {q:"Does your company have approved AI sales tools?", o:["Yes","Mostly","Informal guidance","No"]}, {q:"Can you measure AI tool ROI?", o:["Yes","Mostly","Informally","No"]}]}, {t:"License Optimization", q:[ {q:"Before renewing sales tools, do you review actual usage?", o:["Always","Usually","Sometimes","Rarely"]}, {q:"Can you reclaim unused sales tool licenses?", o:["Automatically","Through reports","Manually","No process"]}, {q:"Do different GTM teams buy overlapping tools?", o:["Never","Rarely","Sometimes","Frequently"]}]}, {t:"Revenue Stack Governance", q:[ {q:"Does every GTM tool have a clear owner?", o:["Yes","Most do","Some do","Many do not"]}, {q:"Does RevOps participate before teams purchase new tools?", o:["Always","Usually","Sometimes","Rarely"]}, {q:"Can leadership see total GTM technology spending?", o:["Immediately","Within days","After analysis","No"]}]}, {t:"Revenue Impact", q:[ {q:"Can you prove your GTM tools increase revenue?", o:["Yes","Mostly","Partially","No"]}, {q:"If your CRO asked 'Which sales tools should we keep, remove, or replace?', could you answer?", o:["Immediately","Within days","Within weeks","No"]}]} ], bands:[ {n:"Optimized Revenue Stack",tone:"good",b:["Strong adoption","Clear ownership","Measurable ROI"],note:"Opportunity: improve automation and negotiation."}, {n:"Revenue Stack Friction",tone:"warn",b:["Unused tools","Inconsistent adoption","Unclear ownership"]}, {n:"GTM Technology Waste Risk",tone:"high",b:["Duplicate tools","Unused licenses","Poor ROI visibility and disconnected workflows"]}, {n:"Critical Revenue Stack Problem",tone:"crit",b:["You can't say which tools improve revenue","Or which licenses are unused","Or what to remove and where reps waste time"]} ], oppsHead:"Your Biggest Opportunities", opps:[{n:"Tool Consolidation",d:"Identify overlapping platforms."},{n:"License Optimization",d:"Remove unused seats."},{n:"Workflow Improvement",d:"Connect fragmented systems."},{n:"Revenue Attribution",d:"Understand which tools create pipeline."}], cta:{head:"Get Your Free Revenue Stack Optimization Review",sub:"Nicklpass helps RevOps teams:",bul:"discover hidden GTM spend · identify unused licenses · optimize tool adoption · negotiate better pricing"} }, /* ---------- 8. AI Governance / Security (verbatim spec) ---------- */ { id:"govern", num:"08", cat:"Security / AI Governance", title:"AI + SaaS Data Exposure Risk Assessment™", tag:"How prepared is your company to control AI-driven data risks?", scoreLabel:"Your AI Governance Readiness Score", ctx:{label:"Number of employees", ph:"e.g. 500"}, research:["Flexera — State of ITAM 2026 (AI visibility)","IBM — Cost of a Data Breach Report","Verizon — Data Breach Investigations Report","NIST — AI Risk Management Framework"], sections:[ {t:"AI Tool Visibility", q:[ {q:"Does your company know which AI tools employees are using?", o:["Yes, automatically tracked","Mostly","Employees report usage manually","We do not know"]}, {q:"Can security identify unauthorized AI tools?", o:["Immediately","Within days","Through audits","Usually after an issue"]}, {q:"Do you maintain an inventory of approved AI applications?", o:["Yes, automatically updated","Mostly","Spreadsheet-based","No"]}]}, {t:"AI Data Protection", q:[ {q:"Do employees know what company information they can share with AI tools?", o:["Yes, clearly defined","Mostly","Informal guidance exists","No guidance exists"]}, {q:"Does your company classify data before employees use AI tools?", o:["Yes","Mostly","Some data only","No"]}, {q:"Can security detect when sensitive data enters AI tools?", o:["Automatically","Mostly","Through reviews","Cannot"]}]}, {t:"AI Approval Process", q:[ {q:"Does every AI tool require security approval before use?", o:["Always","Usually","Sometimes","No"]}, {q:"Does your company maintain an approved AI vendor list?", o:["Yes","Mostly","Informal list","No"]}, {q:"Does procurement review AI vendors before purchase?", o:["Always","Usually","Sometimes","Rarely"]}]}, {t:"Compliance Readiness", q:[ {q:"Can your company prove which AI tools process company data?", o:["Immediately","Within days","After manual review","No"]}, {q:"Do AI vendors undergo security reviews?", o:["Every vendor","Most vendors","Some vendors","Rarely"]}, {q:"Can you identify where AI vendors store company data?", o:["Always","Usually","Sometimes","Unknown"]}]}, {t:"AI User Access Control", q:[ {q:"Do you know who has access to paid AI tools?", o:["Yes","Mostly","Partially","No"]}, {q:"Are AI licenses removed when employees leave?", o:["Automatically","Within days","Manually","Rarely"]}, {q:"Are AI permissions reviewed regularly?", o:["Monthly","Quarterly","Occasionally","Never"]}]}, {t:"AI Risk Monitoring", q:[ {q:"Does your company monitor AI-related security risks?", o:["Continuously","Regular reviews","Manual checks","No monitoring"]}, {q:"Does security receive alerts about risky AI usage?", o:["Automatically","Mostly","Manually","Never"]}]}, {t:"Executive Reporting", q:[ {q:"Can you report AI risk exposure to executives?", o:["Immediately","Within days","After analysis","Cannot"]}, {q:"Can you estimate financial impact of AI risks?", o:["Yes","Mostly","Rough estimate","No"]}, {q:"If your CEO asked 'Are we safely using AI?', could you provide evidence?", o:["Immediately","Within days","Within weeks","No"]}]} ], bands:[ {n:"AI Governance Ready",tone:"good",b:["Clear AI policies","Strong visibility","Controlled data usage"],note:"Opportunity: improve automation and monitoring."}, {n:"AI Governance Gaps Emerging",tone:"warn",b:["Inconsistent AI usage rules","Limited visibility","Manual reviews"]}, {n:"High AI Data Exposure Risk",tone:"high",b:["Unknown AI tools in use","Employee data leakage risk","Weak approval and compliance uncertainty"]}, {n:"Critical AI Governance Exposure",tone:"crit",b:["You can't say which AI tools are used","Or what data enters them and who approved them","Or whether AI vendors are compliant"]} ], oppsHead:"Your Biggest Risks", opps:[{n:"Shadow AI Risk",d:"Employees may use AI tools without approval."},{n:"Data Leakage Risk",d:"Sensitive information may enter external AI systems."},{n:"Compliance Risk",d:"You may struggle to prove governance."},{n:"Vendor Risk",d:"AI providers may create unknown third-party exposure."}], cta:{head:"Get Your Free AI + SaaS Governance Review",sub:"Nicklpass helps security & compliance teams:",bul:"discover AI usage · identify risky applications · control access · build AI governance processes"} } ]; /* ================= STATE ================= */ let cur=null, flat=[], idx=0, answers=[]; /* ================= URL ROUTING (subfolder pages) ================= */ const NP_BASE = "/assessments"; // Webflow landing page path const SLUG2ID = { "saas-waste":"saasops","procurement":"procurement","finops":"finops", "spend-control":"finance","ai-roi":"ai","it-licensing":"it", "revops":"revops","ai-governance":"govern" }; const ID2SLUG = {}; Object.keys(SLUG2ID).forEach(function(s){ ID2SLUG[SLUG2ID[s]]=s; }); function npHosted(){ return location.protocol!=='file:'; } // inline when testing locally function npGoMagnet(id){ window.location.href = NP_BASE + "/" + (ID2SLUG[id]||id); } /* ================= LANDING ================= */ function $(id){ return document.getElementById(id); } const grid=$('lmGrid'); if(grid) M.forEach((m,i)=>{ const c=document.createElement('button'); c.className='lm'; c.innerHTML=`
    ${m.num}${m.cat}

    ${m.title}

    ${m.tag}

    Start the check 20 questions · ~5 min`; c.onclick=function(){ if(npHosted()) npGoMagnet(m.id); else openMagnet(i); }; grid.appendChild(c); }); /* ================= NAV ================= */ (function(){ var el=$('homeLink'); if(el) el.onclick=function(){ if(npHosted()) window.location.href=NP_BASE; else goHome(); }; })(); (function(){ var el=$('fback'); if(el) el.onclick=function(){ if(window.NICKLPASS_MAGNET && npHosted()) window.location.href=NP_BASE; else goHome(); }; })(); function goHome(){ var f=$('funnel'); if(f) f.classList.remove('active'); var l=$('landing'); if(l) l.style.display=''; window.scrollTo({top:0,behavior:'smooth'}); } function showStage(s){ ['pw','quiz','result'].forEach(function(x){ var el=$(x); if(el) el.classList.toggle('hidden',x!==s); }); window.scrollTo({top:0,behavior:'smooth'}); } /* Startup diagnostic — prints the name of anything Webflow failed to render */ (function(){ var ids=['homeLink','fback','landing','lmGrid','funnel','pw','quiz','result','pwStart','pwEmail','pwCat','pwTitle','qOpts','scoreVal']; var missing=ids.filter(function(id){ return !$(id); }); if(missing.length) console.warn('[Nicklpass] These elements are missing from the page (check the HTML Embed paste): '+missing.join(', ')); else console.log('[Nicklpass] All elements present — ready.'); })(); /* ================= AUTO-OPEN FROM PAGE CONFIG ================= Subpages set: window.NICKLPASS_MAGNET = "procurement"; (slug or id) When absent (the /assessments landing page), the full grid shows. */ function npAutoOpen(){ if(!window.NICKLPASS_MAGNET) return; var id = SLUG2ID[window.NICKLPASS_MAGNET] || window.NICKLPASS_MAGNET; var i = M.findIndex(function(x){ return x.id===id; }); if(i>=0) openMagnet(i); else console.warn('[Nicklpass] Unknown NICKLPASS_MAGNET value: "'+window.NICKLPASS_MAGNET+'"'); } /* ================= OPEN MAGNET (paywall first) ================= */ function openMagnet(i){ cur=M[i]; idx=0; answers=[]; flat=[]; cur.sections.forEach(sec=>sec.q.forEach(q=>flat.push({sec:sec.t,q:q.q,o:q.o}))); var _l=$('landing'); if(_l) _l.style.display='none'; var _f=$('funnel'); if(_f) _f.classList.add('active'); document.getElementById('pwCat').textContent=cur.cat; document.getElementById('pwTitle').textContent=cur.title; document.getElementById('pwTag').textContent=cur.tag; document.getElementById('pwCtxLabel').textContent=cur.ctx.label+" (optional)"; const ctx=document.getElementById('pwCtx'); ctx.value=''; ctx.placeholder=cur.ctx.ph; document.getElementById('pwEmail').value=''; document.getElementById('pwName').value=''; document.getElementById('pwCompany').value=''; document.getElementById('pwErr').style.display='none'; document.getElementById('pwResearch').innerHTML='Built from: '+cur.research.join(' · '); showStage('pw'); } /* ================= PAYWALL SUBMIT ================= */ (function(){ var _b=$('pwStart'); if(_b) _b.onclick=()=>{ const email=document.getElementById('pwEmail').value.trim(); const ok=/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email); const err=document.getElementById('pwErr'); if(!ok){err.style.display='block';return;} err.style.display='none'; captureLead(email); idx=0; answers=[]; renderQ(); showStage('quiz'); }; })(); function captureLead(email){ leadInfo={ assessment:cur.title, category:cur.cat, email:email, name:document.getElementById('pwName').value.trim(), company:document.getElementById('pwCompany').value.trim(), ctxLabel:cur.ctx.label, ctxValue:document.getElementById('pwCtx').value.trim() }; // EMAIL 1 — a new lead just unlocked an assessment var p={}; p.subject="New assessment lead: "+cur.title; p["Lead type"]="Unlocked assessment"; p["Assessment"]=cur.title; p["Category"]=cur.cat; p["Name"]=leadInfo.name||"(not provided)"; p["Email"]=email; p["Company"]=leadInfo.company||"(not provided)"; p[cur.ctx.label]=leadInfo.ctxValue||"(not provided)"; p["Time"]=new Date().toLocaleString(); sendMail(p); } /* ================= QUESTIONS ================= */ function renderQ(){ const item=flat[idx], total=flat.length; document.getElementById('progFill').style.width=(idx/total*100)+'%'; document.getElementById('progLeft').textContent=`Question ${idx+1} of ${total}`; document.getElementById('progRight').textContent=item.sec; document.getElementById('sectLabel').textContent=item.sec; document.getElementById('qText').textContent=item.q; const wrap=document.getElementById('qOpts'); wrap.innerHTML=''; const letters=['A','B','C','D']; item.o.forEach((opt,i)=>{ const b=document.createElement('button'); b.className='opt'; b.innerHTML=`${letters[i]}${opt}`; b.onclick=()=>pick(i); wrap.appendChild(b); }); } function pick(optIdx){ answers[idx]={optIdx:optIdx, pts:PTS[optIdx]}; if(idxs+(a?a.pts:0),0); // 0..100 const band=bandOf(score); const col=TONECOL[band.tone]; document.getElementById('resCat').textContent=cur.cat; document.getElementById('scoreLabel').textContent=cur.scoreLabel; document.getElementById('bandName').textContent=band.n; document.getElementById('bandName').style.color=col; // animate const el=document.getElementById('scoreVal'), mk=document.getElementById('barMarker'); let n=0; const step=Math.max(1,Math.round(score/30)); const iv=setInterval(()=>{n+=step;if(n>=score){n=score;clearInterval(iv);}el.textContent=n;mk.style.left=n+'%';},22); // result bullets document.getElementById('resultHead').textContent = band.tone==='good' ? "What this says about you" : "What your team likely deals with"; const ul=document.getElementById('resBul'); ul.innerHTML=''; band.b.forEach(t=>{ const li=document.createElement('li'); const good=band.tone==='good'; li.innerHTML=`${good?'✓':'✕'}${t}`; ul.appendChild(li); }); if(band.note){ const li=document.createElement('li'); li.innerHTML=`${band.note}`; ul.appendChild(li); } // opportunities document.getElementById('oppsHead').textContent=cur.oppsHead; const og=document.getElementById('oppsGrid'); og.innerHTML=''; cur.opps.forEach(o=>{ const d=document.createElement('div'); d.className='oppcard'; d.innerHTML=`
    ${o.n}
    ${o.d}
    `; og.appendChild(d); }); // cta document.getElementById('ctaHead').textContent=cur.cta.head; document.getElementById('ctaSub').textContent=cur.cta.sub; document.getElementById('ctaBul').textContent=cur.cta.bul; // marking sheet research document.getElementById('sheetResearch').innerHTML=cur.research.join('
    '); // EMAIL 2 — full submission: every answer + score + band var letters=['A','B','C','D']; var lines=[]; flat.forEach(function(it,i){ var a=answers[i]; var letter = a ? letters[a.optIdx] : "-"; var chosen = a ? it.o[a.optIdx] : "(no answer)"; var pts = a ? a.pts : 0; lines.push((i+1)+". ["+it.sec+"] "+it.q+"\n -> "+letter+". "+chosen+" ("+pts+" pts)"); }); var m={}; m.subject="Assessment completed: "+cur.title+" — Score "+score+"/100 ("+band.n+")"; m["Lead type"]="Completed assessment"; m["Assessment"]=cur.title; m["Score"]=score+"/100"; m["Band"]=band.n; m["Name"]=(leadInfo&&leadInfo.name)||"(not provided)"; m["Email"]=(leadInfo&&leadInfo.email)||"(not provided)"; m["Company"]=(leadInfo&&leadInfo.company)||"(not provided)"; m[(leadInfo&&leadInfo.ctxLabel)||"Context"]=(leadInfo&&leadInfo.ctxValue)||"(not provided)"; m["Time"]=new Date().toLocaleString(); m["Answers"]="\n"+lines.join("\n\n"); sendMail(m); showStage('result'); } /* run the subpage auto-open once everything is defined */ npAutoOpen(); } if(document.readyState==='loading'){ document.addEventListener('DOMContentLoaded', npBoot); } else { npBoot(); } })();