Beginner perfumer · 109
Beginner perfumer #109: I guessed the substantivity field inflates at the long end, and I was wrong
· 18 min read
Two materials in a row carried substantivity values several times what their family's vapour pressure predicted, so I guessed the field over-reports systematically at the long end. This round I tested it. Removing all 137 materials listed at 400 hours moves the correlation between vapour pressure and substantivity from -0.659 to -0.644, which is nothing. The hypothesis does not hold. Two more useful things fell out along the way: 400 hours accounts for 16.5% of all substantivity values and 35.9% of everything at 100 hours or more, making it a bucket label rather than a measurement; and the vapour pressures behind every substantivity value span four to seven orders of magnitude, so the long end is not worse than the rest. What is clean is the bucket medians. A log-log fit across 12 buckets gives R² = 0.927 and a slope that works out to roughly 5.85x substantivity per decade of vapour pressure. The 'about 3x' I published in #103 was computed at the individual-material level and had been flattened by noise.
About a 5 minute read.
The short version
- Last round I guessed the substantivity field over-reports systematically at the long end. That guess does not hold.
- Removing all 137 materials at 400 hours moves the vapour-pressure correlation from -0.659 to -0.644
- But 400 hours accounts for 16.5% of all substantivity values and 35.91% of everything at 100 hours or above. It is a bucket label, not a measurement
- The vapour pressures behind every substantivity value span four to seven orders of magnitude; the long end is no worse
- A log-log fit across the 12 bucket medians gives R² = 0.927, working out to roughly 5.85x substantivity per decade of vapour pressure
- That corrects the "about 3x" I published in #103
What I guessed
When I wrote up cis-3-hexenyl salicylate I computed that its 216 hours ran about ten times its family's vapour pressure trend, and when I wrote up perilla alcohol its 269 hours ran about four times. In both articles I wrote that I would not use the number.
After two of them I put a hypothesis in my notes: the substantivity field over-reports at the long end.
Two cases is not enough. This round I tested it.
The test and the result
1,347 materials carry both a substantivity value and a 25 °C vapour pressure. I computed the correlation twice:
| n | rho | |
|---|---|---|
| All | 1,347 | -0.659 |
| Excluding the 400-hour group | 1,210 | -0.644 |
If the 400-hour group were inflated, removing it should strengthen the correlation. It weakened by 0.015, which at this sample size is nothing.
The hypothesis fails. I generalised from two cases to a whole field, and I was wrong.
But 400 hours really is not a measurement
The test turned up something else. I counted the distinct values in the substantivity field:
- 2,027 materials carry a value, across only 210 distinct values
- 400.0 hours appears 334 times, or 16.48% of everything
- Among the 930 materials at 100 hours or above, 400 accounts for 35.91%
- The database maximum is 901 hours, and only 17 materials exceed 400
One value takes a third of the long-end records with almost nothing above it. 400 means "very long", not "400".
Look at its composition. Of the 137 materials at 400 hours that also carry a vapour pressure, those pressures run from 0.000001 to 5.45 mmHg, spanning 6.7 orders of magnitude:
| Highest vapour pressures inside the 400-hour group | Vapour pressure |
|---|---|
| musk gx 50% in IPM | 5.45 |
| costus valerolactone | 3.89 |
| isovaleric acid | 0.554 |
| phenyl acetaldehyde | 0.368 |
| 2-acetyl pyrazine | 0.188 |
For contrast: dextro-limonene's vapour pressure is 0.198, and it is listed at 4 hours.
2-Acetyl pyrazine and limonene are about equally volatile. One reads 400 hours, the other reads 4.
Except every bucket is this wide
This is where I would have drawn the wrong conclusion. Seeing "6.7 orders of magnitude" invites saying the field is broken. So I computed the other buckets too:
| Substantivity | n | Median vapour pressure | Full range (decades) | Interquartile range (decades) |
|---|---|---|---|---|
| 1 h | 60 | 3.482 | 6.3 | |
| 4 h | 142 | 0.894 | 5.5 | 1.1 |
| 8 h | 73 | 0.210 | 7.0 | |
| 12 h | 58 | 0.097 | 4.8 | |
| 24 h | 68 | 0.035 | 4.7 | 1.0 |
| 48 h | 50 | 0.0075 | 4.1 | |
| 168 h | 32 | 0.007 | 4.8 | |
| 400 h | 137 | 0.002 | 6.7 | 1.8 |
The 8-hour bucket spans 7.0 orders of magnitude, wider than the 400-hour one. The long end is not special.
And look at the gap between the fourth column and the fifth. The 4-hour bucket spans 5.5 decades in total, but its interquartile range is only 1.1. The middle half sits inside a single decade; the tails are what stretch the range.
The full range spooked me at first. The interquartile range is what this field actually looks like.
The medians are startlingly clean
Plot the first and third columns on log-log axes and regress across the 12 buckets with n≥20:
R² = 0.927, slope -0.767.
Converted: roughly 5.85x substantivity per decade of vapour pressure.
What I published in Vapour pressure predicts how long it lasts was about 3x. That number came from the individual-material level.
The two differ by nearly a factor of two, and the reason is not an arithmetic slip on either side. Measurement error flattened the slope.
When your x-axis (here, vapour pressure) carries noise of its own, the regression slope is pulled systematically toward zero. Statisticians call this regression dilution; Hutcheon and colleagues gave a very readable account in BMJ in 2010 (PMID 20573762). Taking bucket medians averages the x-axis noise away first, so the bucket-level slope sits closer to the real relationship.
Both numbers are mine. The 5.85 is the one to trust.
So how should you use this field
| What you want | Can you |
|---|---|
| Compare which of two materials lasts longer | Yes, the bucket ordering is reliable |
| Read 400 hours as "it will hold for 16 days" | No, that is a "very long" label |
| Infer vapour pressure or molecular weight from a single value | No, one bucket spans 4 to 7 orders of magnitude |
| Estimate how much substantivity a decade of vapour pressure buys | Yes, use 5.85x, not 3x |
This is the same sentence I reached when I audited the evaluation concentration: use it as a ranking, not as a number. The difference is that the evaluation concentration has only five values, so its ladder is visible at a glance. The substantivity field has 210 distinct values and looks like a measurement, which makes it far easier to read as one.
Do the two case studies still stand
They do, but they mean something different now.
The 216 hours on cis-3-hexenyl salicylate and the 269 on perilla alcohol really do sit above the bucket that their family's other materials occupy. That is an observation at the level of an individual case, and the comparison I made in those two articles remains valid.
What was wrong was moving from two cases to "the whole field inflates at the long end." An individual deviation and a systematic bias in a field are different things, and I ran them together.
What this doesn't establish
- The 1,347 covers only materials with values in both fields. 2,027 carry a substantivity value, and 680 of those have no 25 °C vapour pressure and never entered this analysis at all.
- 96% of vapour pressures carry
(est). I audited one field with an estimate, and the two error sources may share an origin. - The bucket-median fit rests on 12 points. An R² of 0.927 looks good, but 12 points make an R² look good easily.
- The 5.85x is a converted slope, not a prediction interval. You cannot use it to compute how many hours a single material will last.
- I did not prove 400 is a censoring value. What I showed is that its share is anomalously high, that almost nothing sits above it, and that the group spans 6.7 orders of magnitude. All three point the same way, but I have not seen the program that generates this field.
- I ran no olfactory experiment. Wachowiak and colleagues warned in J Neurosci in 2025 that the concentration scales used in olfactory research do not line up with those occurring in nature (PMID 40044450). Everything here is a relationship between database fields, not between noses.