희소성 효과

Scarcity Effect

수량이나 시간이 한정돼 있다는 신호가 행동을 앞당긴다는 설득 원리. "재고 2개 남음"이 대표 예시입니다.

다른 이름: Scarcity principleUrgency
···
html
<div class="stage">
  <div class="pane"><div class="tag">A</div>
    <button class="btn">Add to cart</button>
    <div class="cur" id="c1">&#10148;</div>
  </div>
  <div class="pane"><div class="tag">B</div>
    <div class="urgent" id="stock">Only 4 left</div>
    <button class="btn">Add to cart</button>
    <div class="cur" id="c2">&#10148;</div>
  </div>
</div>
css
.stage{width:94%;height:88%;display:flex;gap:6%}
.pane{position:relative;flex:1;border-radius:14px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;gap:8px;overflow:hidden}
.tag{position:absolute;top:8px;left:10px;font:700 11px/1 monospace;color:var(--muted)}
.btn{border:0;border-radius:9px;padding:9px 18px;background:var(--accent);color:#fff;font-weight:700;font-size:12px}
.urgent{font:800 11px/1 monospace;color:var(--accent-2);animation:pulse 1s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:.6}50%{opacity:1}}
.cur{position:absolute;font-size:14px;color:var(--fg);transform:rotate(-45deg)}
#c1{animation:calm 2.6s ease-in-out infinite}
#c2{animation:rush .9s ease-out infinite}
@keyframes calm{0%,100%{left:16%;top:80%}55%{left:50%;top:52%}100%{left:50%;top:52%}}
@keyframes rush{0%{left:16%;top:80%}70%,100%{left:50%;top:48%}}
js
const nums = [4, 3, 3, 2];
const el = document.getElementById('stock');
let i = 0;
setInterval(() => { i = (i + 1) % nums.length; el.textContent = 'Only ' + nums[i] + ' left'; }, 1500);

치알디니의 6가지 설득 원칙 중 사회적 증거(→ social-proof)와 함께 가장 널리 쓰이는 원리입니다. 희귀하거나 곧 사라질 것으로 지각되는 대상은 그 자체로 더 가치 있게 느껴집니다 — 실제 재화 가치와 무관하게 작동하는 인지 편향입니다.

"품절 임박", "12:00에 마감되는 할인", "실시간으로 줄어드는 재고 숫자"가 전부 같은 원리입니다. 진짜 한정 수량이라면 구매를 돕는 정보지만, 새로고침할 때마다 재고가 다시 "2개"로 리셋되는 가짜 타이머는 신뢰를 파괴하는 다크 패턴(→ dark-pattern)입니다.

데모는 평범한 버튼(A)과, 줄어드는 재고 숫자 + 카운트다운이 붙은 버튼(B)을 향해 커서가 얼마나 다급하게 움직이는지 비교합니다.

언제 쓰나

재고·마감 정보를 보여줄 때 그 숫자가 실제 시스템 값인지 확인하세요. 페이지를 새로고침해도 같은 숫자가 나온다면 사용자가 금방 눈치챕니다.