Funnel-stage attribution

퍼널 단계별 기여

Group journey touchpoints into early, middle, and late roles.

···
html
<div class="fsa"><div class="fsa-head">CONVERTED PATH <button id="fsa-next">PATH A → B</button></div><div class="fsa-stages"><div><small>EARLY</small><b id="fsa-early">VIDEO</b><i></i></div><div><small>MID</small><b id="fsa-mid">SOCIAL</b><i></i></div><div><small>LATE</small><b id="fsa-late">SEARCH</b><i></i></div></div><div class="fsa-bottom"><span id="fsa-path">VIDEO → SOCIAL → SEARCH → BUY</span><b>3 TOUCHES</b></div></div>
css
.fsa{width:min(87%,590px);font:850 clamp(10px,max(2vmin,1vw),14px)/1.2 sans-serif}.fsa-head,.fsa-bottom{display:flex;align-items:center;justify-content:space-between;gap:5px}.fsa-head{border-bottom:2px solid var(--fg);padding-bottom:8px}.fsa button{font:inherit;border:1px solid var(--fg);background:var(--fg);color:var(--bg);padding:5px 7px;cursor:pointer}.fsa-stages{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(5px,1.5vmin,12px);margin:clamp(14px,4vmin,30px) 0}.fsa-stages>div{border:1px solid var(--line);background:var(--surface);min-width:0;padding:clamp(7px,2vmin,14px);position:relative}.fsa-stages small{display:block;color:var(--muted);font-size:clamp(10px,max(1.5vmin,1vw),12px)}.fsa-stages b{display:block;color:var(--accent);margin-top:clamp(5px,1.5vmin,10px);font-size:clamp(12px,max(2.6vmin,1.3vw),19px)}.fsa-stages i{display:block;width:65%;height:clamp(4px,1vmin,8px);background:var(--accent);margin-top:8px;transition:width .4s}.fsa-stages>div:nth-child(2) i{background:var(--accent-2)}.fsa-stages>div:nth-child(3) i{background:var(--accent-3)}.fsa-bottom{border-top:1px solid var(--line);padding-top:8px;color:var(--muted);font-size:clamp(10px,max(1.6vmin,1vw),12px)}.fsa-bottom b{color:var(--fg);white-space:nowrap}
js
let second=false;function draw(){const labels=second?['SEARCH','VIDEO','EMAIL']:['VIDEO','SOCIAL','SEARCH'];['early','mid','late'].forEach((stage,i)=>{document.querySelector('#fsa-'+stage).textContent=labels[i]});document.querySelector('#fsa-path').textContent=labels.join(' → ')+' → BUY';document.querySelector('#fsa-next').textContent=second?'PATH B → A':'PATH A → B';document.querySelectorAll('.fsa-stages i').forEach((bar,i)=>bar.style.width=(second?[80,50,65]:[65,45,85])[i]+'%')}draw();const timer=setInterval(()=>{second=!second;draw()},1750);document.querySelector('#fsa-next').onclick=()=>{clearInterval(timer);second=!second;draw()};

Funnel-stage attribution groups touchpoints in converted paths into early, middle, and late roles. It helps show whether a channel tends to introduce demand, support comparison, or close a journey. GA4 added this view to its conversion attribution analysis beta in 2026.

Change the path in the demo and the same channel moves to another stage. Single-touch conversions should be considered separately from longer paths so their role is not overstated.

Stage credit describes observed paths. Untracked touches remain invisible, and appearing early does not by itself establish incremental impact.

When to use

Use it when last-click results hide the role of earlier journey touchpoints.

Open as page ↗