Crafte Sessions analysis 2026 09 29 2026 10 29

sessions_analysis-2026-09-29-2026-10-29.csv · 2,246 rows · 15 columns · definition v3 saved 29 Oct 2026 14:08

Segments v13 built 29 Oct 2026 14:08 on feature set v6

A newer feature set (v8) exists. These segments were built on v6.
Segments found
9
best of 3 to 10
In a segment
99%
2,222 of 2,246 snapshots
Unknown
1.1%
0 history · 1 between · 23 novel
Rules match the model
95%
for named segments

What to do

From these segments' numbers. Setting buttons fill in the Build segments tab (then Build segments); merge buttons change the table below (then Save labels, no refit).
  • Worth doingS8, S9 are very small (1 snapshot)

    Under 30 snapshots, a segment's rates swing with a couple of people, and here the fit is mostly splitting off a few odd snapshots. Merge each into the segment it's most like (S8 → S6, S9 → S6). Keep one only if it's a group you specifically care about.

  • Worth doingordered: use S6, S5, S2 as the targets on Outcomes

    S6, S5, S2 hold 45% of ordered in 21% of the snapshots (2.2× the overall rate). Leaving out S3 (10% of snapshots) would also leave out 5% of ordered: that's the trade-off of the reduction.

  • Fine as isUnknowns: 1.1% of snapshots

    A small unknown share means nearly everyone fits a segment, while the odd ones aren't forced in.

  • Fine as is9 segments is a clear best fit

    The score is clearly better at 9 than at the counts either side. After merging the small ones you'd have 7 that matter.

Segments

Name them, merge near-duplicates, or send one to unknown. Nothing is refitted.
SegmentLabelSnapshotsShare What sets it apartMerge intoUnknown
S1 1,24655.5% Slightly more often device is mobile; slightly more often landingPage is /
S2 24310.8% Much longer-standing (returning); much more visits so far
S3 22810.2% Much more often device is tablet; slightly more often landingPage is /
S4 1968.7% Much more often device is desktop; slightly more often landingPage is /
S5 1456.5% Much more often landingPage is other
S6 743.3% Much more often source is Direct; more often landingPage is other; slightly more often device is desktop
S7 883.9% Much more often landingPage is /product/79-chocolate-fruit-cake-500g-boxed
S8 10.0% Much more add_search in actions; much higher pages; much higher minutes
S9 10.0% Much more sub_start in actions; much higher pages; much more often device is tablet
? Unknown: between segments 10.0% high minutes (+4.9 sd), low landingPage=/ (-2.2 sd), high pages (+1.3 sd)
? Unknown: fits no segment 231.0% low newVisitor (-5.1 sd), low source=Facebook (-3.3 sd), high pages (+2.6 sd)

Outcome concentration

Share of each segment's snapshots whose entity eventually had the outcome. Lift = rate ÷ overall rate.
S6 has the highest rate: 16% for ordered, 4.2× the overall 3.8%.
SegmentSnapshots Shareordered
RateLiftCaptured
S11,24655.5%2.1%0.5×30%
S224310.8%5.8%1.5×16%
S322810.2%1.8%0.5×5%
S41968.7%4.1%1.1×9%
S51456.5%9.0%2.3×15%
S7883.9%3.4%0.9×3%
S6743.3%16.2%4.2×14%
S810.0%100.0%26.1×1%
S910.0%0.0%0.0×0%
Unknown: between segments10.0%0.0%0.0×0%
Unknown: fits no segment231.0%21.7%5.7×6%
Everyone2,246100%3.8%

How each segment differs

Average of each input, in standard deviations from everyone. Red higher, blue lower.
landingPage=/product/79-chocolate-fruit-cake-500g-boxed separates the segments most: from -0.2 sd in S4 to +5.0 sd in S7.
S1S2S3S4S5S7S6S8S9BetweenNovel
actions[add_search]-0.0-0.0-0.0-0.0-0.0-0.0-0.0+47.4-0.0-0.0-0.0
actions[sub_start]-0.0-0.0-0.0-0.0-0.0-0.0-0.0-0.0+47.4-0.0-0.0
pages-0.1+0.2-0.2-0.1+0.2+0.4+0.7+6.3+4.3+1.3+2.6
newVisitor+0.1+0.1+0.1+0.1+0.1+0.1-0.9+0.1+0.1+0.1-5.1
landingPage=/product/79-chocolate-fruit-cake-500g-boxed-0.2-0.2-0.2-0.2-0.2+5.0-0.2-0.2-0.2-0.2-0.2
minutes-0.1+0.1-0.1-0.1+0.2-0.0+0.7+2.4+2.3+4.9+1.5
source=Facebook+0.2+0.2+0.2+0.1+0.2+0.2-4.8+0.2+0.2+0.2-3.3
source=Direct-0.2-0.2-0.2-0.2-0.2-0.2+4.7-0.2-0.2-0.2+1.4
device=desktop-0.4-0.0-0.4+2.7-0.2-0.1+0.6-0.4-0.4-0.4+0.4
device=tablet-0.4-0.1+2.6-0.4-0.0+0.1-0.3-0.4+2.6-0.4+0.8
rows-0.3+1.7-0.3-0.3+0.3-0.0-0.1-0.3-0.3-0.3+2.5
landingPage=other-0.2-0.2-0.2-0.2+2.5-0.2+1.2-0.2-0.2-0.2+0.7
landingPage=/+0.5-0.5+0.4+0.3-2.2-2.2-1.1+0.5+0.5-2.2-0.6
actions[add_recommended]-0.1+0.3-0.1-0.1-0.1-0.1-0.1-0.1-0.1-0.1+2.1
tenure_days-0.3+1.7-0.3-0.3+0.3-0.0-0.1-0.3-0.3-0.3+2.0
landingPage=/product/474-port-and-prune-pudding-800g-log-in-cloth-0.1-0.1-0.1-0.1+1.7-0.1-0.1-0.1-0.1-0.1-0.1
device=mobile+0.6+0.1-1.7-1.7+0.2-0.0-0.1+0.6-1.7+0.6-0.9
landingPage=/product/75-christmas-cake-boxed-0.1-0.1-0.1-0.1+1.5-0.1-0.1-0.1-0.1-0.1+0.3

Movement between segments

Where each entity's next snapshot lands, as a share of the row
There are 232 steps from one snapshot to the next. 31% stayed in the same segment, so people often change segment between visits.
From ↓   to →S1S2S3S4S5S7S6S8S9BetweenNovelmoves
S185%11%4%100
S285%13%2%52
S382%9%9%22
S486%14%14
S527%60%7%7%15
S756%44%9
S611%67%22%9
Unknown: between segments100%1
Unknown: fits no segment10%90%10

Segments over time

Rebuild to see how the segments change over time.

How good are these segments?

Rebuild to measure separation and stability.

Choosing the number of segments

The lowest BIC is at 9 segments, so that's what was used. The next best is 10 (+29,157).
-133k-86k-39k823255k3 segments: BIC 42,43134 segments: BIC 4,16145 segments: BIC -38,68356 segments: BIC -26,22767 segments: BIC -85,30778 segments: BIC -85,70989 segments: BIC -120,425910 segments: BIC -91,26810Number of segments

Lower BIC is a better balance of fit and simplicity. 9 segments scored best.

The unknowns

24 snapshots (1.1%) are unknown: 0 too little history, 1 between segments, 23 fit no segment.
KindSnapshotsNearest segment
Unknown: between segments
Sits between two or more segments; often mid-transition.
1S2 (1)
Unknown: fits no segment
Doesn't resemble any segment. Worth a look: new patterns and fraud often start here.
23S6 (16), S5 (4), S2 (2)

Boundary rules

How to recognise each segment
Together the rules agree with the model 95% of the time: good enough to use as a description.
Each segment gets its own short rules for picking it out from everyone else, in each feature's own units. Taken together, simple rules reproduce 95% of the assignments. Rules show where the lines fall, not why: use the profile above for what defines a segment. Unknowns have no rules; they come from how well a snapshot fits, not from where it sits.
S1 1 rule covering 100% of the segment
  • device = mobile and landingPage = / and rows ≤ 1.5 · covers 100% of the segment, 98% correct
S2 1 rule covering 70% of the segment
  • rows > 1.5 and landingPage is not /product/79-chocolate-fruit-cake-500g-boxed and landingPage is not /product/474-port-and-prune-pudding-800g-log-in-cloth · covers 70% of the segment, 85% correct
S3 1 rule covering 100% of the segment
  • device = tablet and tenure_days ≤ 0.272 and landingPage is not /product/79-chocolate-fruit-cake-500g-boxed · covers 100% of the segment, 93% correct
S4 1 rule covering 100% of the segment
  • device = desktop and rows ≤ 1.5 and source is not Direct · covers 100% of the segment, 92% correct
S5 1 rule covering 100% of the segment
  • landingPage is not / and landingPage is not /product/79-chocolate-fruit-cake-500g-boxed and source = Facebook · covers 100% of the segment, 58% correct
S6 3 rules covering 100% of the segment
  • source is not Facebook and source is not Crafte and source is not Google · covers 85% of the segment, 100% correct
  • source is not Facebook and source = Crafte · covers 10% of the segment, 70% correct
  • source is not Facebook and source is not Crafte and source = Google · covers 5% of the segment, 80% correct
S7 1 rule covering 100% of the segment
  • landingPage = /product/79-chocolate-fruit-cake-500g-boxed · covers 100% of the segment, 100% correct
S8 no clean rule: this segment overlaps others on these features
S9 no clean rule: this segment overlaps others on these features

Compare runs

Find the best segmentation
The pick is v20: its targets hold 83% of ordered in 25% of snapshots (3.3× the rate), with target stability 0.52.
RunFeaturesGroupsShapeSegmentsUnknownSeparationStabilityTargetsCapturedLiftTarget stability
v29
30 Oct 2026 12:50
v8device evened outFull81.1% 0.640.88 S2, S5, S633% in 12%2.8× 0.96 ★
v28
30 Oct 2026 09:20
v7device evened outDiagonal81.3% 0.540.92 ★ S2, S3, S5, S681% in 30%2.7× 0.66
v27
29 Oct 2026 17:17
v6device evened outDiagonal81.3% 0.540.92 ★ S2, S3, S5, S681% in 30%2.7× 0.66
v26
29 Oct 2026 16:29
v6-Diagonal51.0% 0.450.59 S3, S419% in 5%3.4× ★ 0.21
v25
29 Oct 2026 16:28
v6device evened outDiagonal51.0% 0.490.41 S2, S383% in 31% ★2.7× 0.39
v24
29 Oct 2026 16:27
v6device separatelyDiagonal151.0% 0.66 ★0.54 S5, S6, S731% in 10%3.1× 0.62
v23
29 Oct 2026 16:26
v6device ignoredFull50.7% ★ 0.630.37 S2, S341% in 18%2.2× 0.42
v22
29 Oct 2026 16:26
v6-Full51.0% 0.440.60 S3, S419% in 6%3.4× 0.21
v21
29 Oct 2026 16:26
v6device separatelyFull151.0% 0.650.51 S5, S627% in 9%3.0× 0.57
v20 pick
29 Oct 2026 16:24
v6device evened outFull51.0% 0.500.27 S2, S483% in 25% ★3.3× 0.52
v19
29 Oct 2026 16:22
v6-Full51.0% -- --- -
v18
29 Oct 2026 16:20
v6-Full51.0% -- --- -
v17
29 Oct 2026 16:20
v6-Full51.0% -- --- -
v16
29 Oct 2026 16:19
v6-Full51.0% -- --- -
v15
29 Oct 2026 14:10
v6-Full51.0% -- --- -
v14
29 Oct 2026 14:09
v6-Diagonal41.0% -- --- -
v13
29 Oct 2026 14:08
v6-Diagonal91.1% -- --- -
v12
29 Oct 2026 14:08
v6-Diagonal71.0% -- --- -
v11
29 Oct 2026 14:01
v5-Diagonal71.0% -- --- -
v10
29 Oct 2026 13:10
v4-Diagonal71.0% -- --- -
v9
29 Oct 2026 13:10
v4-Diagonal789.8% -- --- -
v8
29 Oct 2026 13:10
v4-Diagonal101.0% -- --- -
v7
29 Oct 2026 13:09
v4-Diagonal71.0% -- --- -
v6
29 Oct 2026 12:51
v3-Diagonal71.0% -- --- -
v5
29 Oct 2026 12:51
v3-Diagonal101.0% -- --- -

Search results

49 setups · 30 Oct 2026 12:43 · judged on ordered

Best: K-means · device evened out (8 segments). Its target segments (S2, S3, S4) hold 77% of ordered in 20% of the training snapshots, 3.8× the overall rate, and come back at 0.96 stability when refitted.

Every setup was fitted on the same 1,828 training snapshots (1,611 people); the 20% of people held out for testing weren't used, so Outcomes can still test the winner honestly.
#SetupSegments UnknownSeparationStabilityCaptured LiftTarget stabilityScore
1K-means · device evened out81.3% 0.640.9677% in 20%3.8× 0.962.93
2Bayesian Gaussian mixture · Diagonal · device evened out81.0% 0.540.6384% in 31%2.7× 0.752.25
3Bayesian Gaussian mixture · Full · source ignored81.0% 0.600.6978% in 27%2.9× 0.542.23
4K-means · device separately181.3% 0.730.9057% in 14%3.9× 0.942.23
5K-means · source evened out81.1% 0.630.7659% in 16%3.7× 0.722.19
6Gaussian mixture · Diagonal · device evened out81.0% 0.550.6381% in 31%2.6× 0.722.14
7Gaussian mixture · Full · device evened out81.0% 0.550.6181% in 31%2.6× 0.782.13
8Bayesian Gaussian mixture · Diagonal · device ignored81.0% 0.670.8181% in 31%2.6× 0.772.11
9Gaussian mixture · Full · device ignored81.0% 0.660.7781% in 33%2.5× 0.722.00
10Bayesian Gaussian mixture · Full · device evened out81.0% 0.550.5978% in 31%2.5× 0.742.00
11Gaussian mixture · Diagonal · device ignored81.0% 0.670.8478% in 31%2.5× 0.751.99
12Gaussian mixture · Full · device separately191.1% 0.670.8262% in 20%3.1× 0.561.96

Settings

One segmentation with exactly these settings. To try many automatically, use Find the best.
Feature set

The inputs to segment on.

Number of segments

Search a range and let the fit decide, or fix it.

When to say "unknown"

Rather than forcing everyone into a segment.

Groups

A column such as device or caseworker that should be treated differently in this run.

Each segment count is fitted 2 times on up to 60,000 snapshots. A range of 8 counts on 20,000 snapshots takes about half a minute; "Diagonal" is several times faster.