SKU-level price optimization

SKU별 가격 최적화

Use each SKU response instead of applying one increase to every item.

···
html
<div class="sku"><div class="switch"><button data-mode="0" class="on">SAME +10%</button><button data-mode="1">BY SKU</button></div><div class="products"><div><span>SENSITIVE ITEM</span><b id="pa">$11</b><i id="ba"></i><small id="ua">82 units</small></div><div><span>STEADY ITEM</span><b id="pb">$11</b><i id="bb"></i><small id="ub">96 units</small></div></div><div class="sum">EST. CONTRIBUTION <strong id="total">$1,246</strong></div></div>
css
.sku{width:min(92%,550px);font:900 clamp(10px,max(2vmin,1vw),14px)/1.2 sans-serif}.switch{display:flex;gap:5px}.switch button{flex:1;border:1px solid var(--line);background:var(--surface);color:var(--fg);padding:7px 2px;font:inherit;cursor:pointer}.switch button.on{background:var(--fg);color:var(--bg)}.products{display:flex;gap:8px;margin-top:10px}.products>div{flex:1;border:2px solid var(--line);padding:8px;min-width:0}.products span,.products small{display:block;color:var(--muted)}.products b{display:block;font-size:clamp(20px,5vmin,38px);margin:3px 0}.products i{display:block;background:var(--accent);height:clamp(12px,4vmin,22px);transition:.35s}.products>div+div i{background:var(--accent-2)}.sum{margin-top:9px;text-align:right}.sum strong{color:var(--accent);font-size:clamp(19px,5vmin,32px)}small{font-size:max(.833em,10px,1vw)}@media(min-width:700px){body>:first-child{transform:scale(1.25);transform-origin:center}}
js
let mode=0;const buttons=[...document.querySelectorAll('[data-mode]')];function draw(){const p=mode?[10,12]:[11,11],u=mode?[100,92]:[82,96],profit=p.reduce((n,price,i)=>n+(price-4)*u[i],0);['a','b'].forEach((key,i)=>{document.querySelector('#p'+key).textContent='$'+p[i];document.querySelector('#u'+key).textContent=u[i]+' units';document.querySelector('#b'+key).style.width=u[i]+'%'});document.querySelector('#total').textContent='$'+profit.toLocaleString();buttons.forEach((b,i)=>b.classList.toggle('on',i===mode))}buttons.forEach((b,i)=>b.onclick=()=>{mode=i;draw()});draw();setTimeout(()=>{mode=1;draw()},650);setTimeout(()=>{mode=0;draw()},2600);

SKU-level optimization distinguishes each item's demand sensitivity, alternatives and role in a range. A blanket increase can sharply reduce units for a sensitive item.

The demo compares a uniform 10% rise with tailored changes across two illustrative products. Estimated units and combined profit move with price.

NIQ's 2026 analysis describes elasticity differences within a portfolio. The demo response function is illustrative; real pricing needs observed data.

When to use

Use when repricing a range, after measuring demand and substitution by item.

Open as page ↗