Palm oil density: temperature, air or vacuum, and tonnage
Palm oil density is about 0.89 kg/l at 50 °C, worked from 15 °C with 0.00068 per °C in the EU. Density in air versus in vacuo, and a worked example.
Operium Solutions · Updated 25 September 2026 · 6 min read
Palm oil density is about 0.89 kg per litre at 50 °C: Codex gives an apparent density (in air) of 0.889 to 0.895 g/ml for crude palm oil. It falls as the oil warms, so the tonnage in a tank is the gauged volume times the density at the tank's own temperature. Whether that density is in air or in vacuo changes the result by about 0.12%.
Why palm oil is carried and measured warm
The Swedish Club (2022) puts the distinction simply: oils are liquid at room temperature, fats are solid, and edible oils with melting points close to or above ambient need heating to stay fluid enough to handle. Palm oil is also split industrially into fractions that melt very differently: the Codex standard sets a slip point of no more than 24 °C for palm olein and of at least 44 °C for palm stearin.
The Codex code of practice for storing and transporting edible fats and oils in bulk (CXC 36, revised 2026) says tanks for solid and semi-solid oils and fats should have heating, so the product is liquid and homogeneous when it is transferred. For palm oil it gives 32 to 40 °C during storage and bulk shipment, and 50 to 55 °C for loading and discharge. Heating should never go faster than 5 °C in 24 hours.
Temperature matters for measurement too. Carried at the wrong temperature, a cargo can stratify, with the denser components settling low in the tank, or fractionate in the tank, with the higher-melting components solidifying (Swedish Club). A single reading or sample may then not represent the tank. CXC 36 takes the loading or discharge temperature as the average of top, middle and bottom readings, at least 30 cm from the heating coils. Where the weight is found from a litre weight, NOFOTA's trading rules (2026) ask for at least three samples per tank, top, middle and bottom, mixed together, and a sample every 300 mm if there is much sediment. See also sampling receipts and cargo sampling.
Palm oil density in the Codex standard
The Codex standard for named vegetable oils (CXS 210) gives two density figures for crude palm oil in its appendix: a relative density of 0.891 to 0.899, for oil at 50 °C against water at 20 °C, and an apparent density of 0.889 to 0.895 g/ml at 50 °C. The fractions are listed at their own temperatures. Palm olein has an apparent density of 0.896 to 0.898 g/ml at 40 °C, palm stearin 0.881 to 0.885 g/ml at 60 °C. The same table gives palm oil an iodine value of 50.0 to 55.0; quality figures of this kind are covered in free fatty acid and iodine value.
The two figures are not interchangeable. Relative density is a ratio to water at 20 °C. For apparent density, the Codex methods standard (CXS 234, amended 2026) names ISO 6883 or AOCS Cc 10c-95. NOFOTA's list of analysis standards titles ISO 6883 as conventional mass per volume, the "litre weight in air" of the trade.
Two caveats. The appendix is supplementary: Codex states that a product which meets the main requirements of the standard, but not these supplementary factors, may still conform to it. And a range for crude palm oil in general is not a figure for a particular cargo. NIOP (2025) wants the litre weight determined on an average composite sample from each storage tank, by a NIOP member laboratory or another recognised independent laboratory.
How palm oil density changes with temperature
Oil expands as it warms, so a litre weighs less. The density is worked from its value at 15 °C. For vegetable oil in the EU the correction factor is 0.00068 kg/l per °C, and many loading ports work from a density list, a table of density per temperature. A density list has to be possible to enter by hand, because the list the port uses is the one that counts.
The NIOP trading rules (2025) include a chart for crude Malaysian palm oil, dated 2003, meant for splitting commingled parcels by interim gauges, in which the weight per US gallon falls by 0.003005 lb for every °F. Converted by us and rounded to three significant figures, that is 0.000648 kg/l per °C: close to the EU factor, but a different table for a different purpose.
Both rulebooks tie the density to the tank temperature. Under NIOP Rule 4.4.4(f), the litre weight in air must be determined at the average temperature at the time of gauging, and the weight is the observed volume times that weight per unit of volume. NOFOTA's clause 11 bases the litre weight in air on the average temperature of the tank. The volume itself comes from the tank table: see ullage reports and sounding tables, and for standard volumes the volume correction factor.
Density in air or in vacuo
A weighing in air shows less than the true mass of an oil, because the oil displaces far more air than the steel weights it is balanced against. OIML D 28 (2004) defines the conventional value of a weighing in air with an air density of 1.2 kg/m³ and weights with a reference density of 8,000 kg/m³, at a reference temperature of 20 °C. On those conventions, in kg/l:
litre weight in air = (density in vacuo − 0.0012) / (1 − 0.0012 / 8.0)
By our calculation, a palm oil with a density in vacuo of 0.8912 kg/l then has a litre weight in air of 0.8901 kg/l, some 0.0011 kg/l or 0.12% less. The rules of NIOP and NOFOTA both work with the litre weight in air, so a density in vacuo from elsewhere must be converted first. The contract decides which basis applies.
Worked example: crude palm oil in a shore tank
A shore tank holds crude palm oil. After gauging and deducting free water and sediment, the tank table gives 2,150.000 m³ at tank temperature. Densities are rounded to four decimals before multiplying; weights are in tonnes to three decimals, as NIOP asks for metric tons.
- Tank temperature. Top, middle and bottom read 54.2, 53.1 and 51.7 °C. The average is 53.0 °C.
- Laboratory result. The laboratory reports a litre weight in air of 0.9158 kg/l at 15 °C (about 0.892 at 50 °C, inside the Codex range).
- Density at tank temperature. With 0.00068 kg/l per °C: 0.9158 − 38.0 × 0.00068 = 0.88996, rounded to 0.8900 kg/l.
- Weight in air. 2,150.000 m³ × 0.8900 t/m³ = 1,913.500 t.
- Mass in vacuo, for comparison. The formula above, reversed: 0.8900 × 0.99985 + 0.0012 = 0.8911 kg/l, rounded; 2,150.000 × 0.8911 = 1,915.865 t, which is 2.365 t or 0.124% more.
The factor in step 3 is the EU figure for vegetable oil. A density list or table the contract prescribes, or a litre weight measured at the tank temperature, governs.
Two sensitivities:
- Using the 15 °C figure as if it were the density at tank temperature gives 1,968.970 t, which is 55.470 t or 2.9% too much.
- Each 1 °C of error in the average temperature moves the density by 0.00068 kg/l, about 1.5 t on this tank.
Based on the working practice of our sector specialist: 25 years in the port, 20 of them as a cargo surveyor. The density at 15 °C has to be corrected to the temperature of the tank before it is used for the weight.
General advice: write down the three temperature readings with their times, not only the average, and keep the seal numbers of the samples with the laboratory report. The average goes into the calculation; the readings are what you defend later.
FOSS
FOSS is software for inspection companies and the port, with a sector specialist at the table. Measurements are entered once, offline on board if need be, and samples are tracked. The outturn per receiving medium is set against the bill of lading weight, and a shortfall of more than 0.5% flags a protest automatically.
Frequently asked questions
What is the density of crude palm oil?
The Codex standard for named vegetable oils (CXS 210) gives crude palm oil an apparent density of 0.889 to 0.895 g/ml at 50 °C, and a relative density of 0.891 to 0.899 for oil at 50 °C against water at 20 °C. These are ranges for crude palm oil in general. A cargo is calculated from the laboratory's result on a sample of the tank itself.
At what temperature is palm oil loaded and discharged?
The Codex code of practice for edible fats and oils in bulk (CXC 36) recommends 50 to 55 °C for loading and discharge of palm oil, and 32 to 40 °C during storage and bulk shipment. Heating should not exceed 5 °C in 24 hours. The loading or discharge temperature is the average of top, middle and bottom readings, taken at least 30 cm from the heating coils.
What is the difference between density in air and in vacuo?
Density in vacuo is true mass per volume. The litre weight in air is what a weighing in air shows, which is less, because the oil displaces more air than the steel reference weights it is balanced against. On the conventions of OIML D 28 the difference for palm oil is about 0.0011 kg/l, or 0.12%. The NIOP and NOFOTA trading rules both work with the litre weight in air.
How much does palm oil density change per degree?
In the EU the correction factor for vegetable oil is 0.00068 kg/l per °C, which is about 1.5 t per °C on a tank of 2,150 m³. A chart in the NIOP trading rules for crude Malaysian palm oil works out to about 0.000648 kg/l per °C, close but not the same. The contract's table, or a density measured at tank temperature, governs.
At what temperature is the density of palm oil worked?
The density is worked from its value at 15 °C, corrected to the temperature of the tank. Codex quotes crude palm oil at 50 °C because the oil is carried warm, but a cargo calculation starts from the laboratory's litre weight on a sample of the tank and the correction factor the contract names.
Can the Codex range be used to calculate a cargo?
No. The Codex appendix that holds the densities is supplementary information, and a product that meets the main requirements of the standard but falls outside it may still conform. Use the laboratory's litre weight on a composite sample of the tank, determined in the way the contract requires.
Further reading
Sources
- FAO/WHO Codex Alimentarius, Standard for Named Vegetable Oils, CXS 210-1999, amended 2026 (corrigenda March and July 2026): section 3.2 and Appendix, Table A2 (2026) — https://www.fao.org/fao-who-codexalimentarius/sh-proxy/en/?lnk=1&url=https%253A%252F%252Fworkspace.fao.org%252Fsites%252Fcodex%252FStandards%252FCXS%2B210-1999%252FCXS_210e.pdf (also https://openknowledge.fao.org/handle/20.500.14283/cd9108en)
- FAO/WHO Codex Alimentarius, Recommended Methods of Analysis and Sampling, CXS 234-1999, amended 2026: named vegetable oils, apparent and relative density (2026) — https://www.fao.org/fao-who-codexalimentarius/sh-proxy/en/?lnk=1&url=https%253A%252F%252Fworkspace.fao.org%252Fsites%252Fcodex%252FStandards%252FCXS%2B234-1999%252FCXS_234e.pdf (also https://openknowledge.fao.org/handle/20.500.14283/cd9058en)
- FAO/WHO Codex Alimentarius, Code of Practice for the Storage and Transport of Edible Fats and Oils in Bulk, CXC 36-1987, revised 2026: sections 3.1.5 and 4.1.1–4.1.3, Appendix I, Table A1 (2026) — https://www.fao.org/fao-who-codexalimentarius/sh-proxy/en/?lnk=1&url=https%253A%252F%252Fworkspace.fao.org%252Fsites%252Fcodex%252FStandards%252FCXC%2B36-1987%252FCXC_036e.pdf (also https://openknowledge.fao.org/handle/20.500.14283/ce0068en)
- OIML, D 28 Conventional value of the result of weighing in air, edition 2004, sections 4 and 5 (2004) — https://www.oiml.org/en/files/pdf_d/d028-e04.pdf
- National Institute of Oilseed Products, NIOP Trading Rules, effective April 17, 2025: Rule 4.4.4(f)(1)–(3) and (5) and the chart for crude Malaysian palm oil in Rule 4.4, pp. 21–22 (2025) — https://niop.org/niop-rulebook-2025/
- NOFOTA, Trading Rules, version 1 January 2026: clause 11 and Chapter XIV, Standards of Analysis (2026) — https://files.enflow.nl/8d14f973-51d0-42b5-824c-aec156b031cf/9efdb5ae-b63c-4ddd-9d0f-43f1a66120b2/trading-rules/2045749-nofota-brochure-tradingrules-def.pdf
- The Swedish Club, Vegetable/edible oil cargoes, loss prevention advice (1 January 2022) — https://www.swedishclub.com/loss-prevention/loss-prevention-advice/vegetable-edible-oil-cargoes/
