Poulsen & Schmidt 2007 — Heavy metals (Cr, Ni, As, Se, Cd, Sn, Sb, Ba, Hg, Pb) by XRF in 10 children’s cosmetic-product packaging materials, Denmark
This Danish Environmental Protection Agency report (Survey of Chemical Substances in Consumer Products, No. 88, 2007), prepared by FORCE Technology Department of Sustainability and Management with constituent analyses by Eurofins, mapped 208 cosmetic products marketed for children (ages 3-14) on the Danish market in April-June 2006 and conducted targeted analyses on subsets: 17 products for the 26 mandatory-declaration fragrances (Eurofins, GC-MS), 11 products for the preservative Kathon (Eurofins, HPLC-UV), 14 packaging materials for chlorine as a PVC screen, 10 packaging materials for phthalates (GC-MS), and 10 packaging materials for heavy metals (FORCE Technology, XRF). The heavy-metals scope of this report is entirely PACKAGING, not the cosmetic product itself; the report explicitly notes that since total values in packaging are well below EN 71-3 toy-migration limits, no product-migration analyses were performed. All ten packaging materials returned total values for Cr, Ni, As, Se, Cd, Sn, Sb, Ba, Hg, Pb that are “substantially below” (4× to 450× below) the EN 71-3 migration ceilings; the one notable outlier is one bobble-bath valve part at 360 ppm total Sn, attributed in-text to use of organotin heat stabilisers in PVC.
Key numbers
Per-sample heavy-metals concentrations in packaging materials by X-ray fluorescence (XRF) on a Spectro X-LAB 2000, surface analysis to ~100 µm depth, detection limit 1 mg/kg, ±10% relative uncertainty (Table 5.13, p. 62; unit ppm = mg/kg; < indicates below the per-element detection limit which varied between samples and is reported sample-by-sample as in the source):
| ID no. | Product type | Part analysed | Cl (NB:%) | Cr ppm | Ni ppm | As ppm | Se ppm | Cd ppm | Sn ppm | Sb ppm | Ba ppm | Hg ppm | Pb ppm |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 21 | Bobble bath | Face | 24 | <7 | 5 | <0.4 | 0.8 | 0.3 | 2 | <0.8 | <5.3 | 0.9 | 2 |
| 27 | Body shampoo/bath gel | Arm (glove) | 10 | <9 | 15 | 1.4 | 0.9 | 0.8 | 4 | <1.0 | 52 | 2 | 4 |
| 32 | Body shampoo/bath gel | Peaked cap | 19 | <6 | 3 | <0.4 | 0.9 | 0.4 | <1.1 | <1.1 | <8.1 | 0.4 | 3 |
| 40 | Hairstyling product | Cover (top) | 0.01 | <3 | 14 | <0.2 | <0.2 | <0.5 | <1 | <1.0 | <7.7 | <0.5 | 1 |
| 74 | Shampoo | Cover (top) | <0.003 | <15 | 1 | <0.1 | 0.5 | 0.7 | 2 | 12 | <6.7 | <2 | 1 |
| 166 | Body lotion/cream | Cover (top) | 0.01 | <3 | 9 | <0.2 | 0.8 | 0.5 | 1 | <1.1 | <7.8 | 0.8 | 2 |
| 184 | Body lotion/cream | Tube near “body lotion” sign | 1 | <2 | 32 | <0.3 | 0.5 | 2 | <2.5 | <2.2 | <19 | <0.5 | 2 |
| 193 | Body lotion/cream | Stomach | 0.05 | <3 | 12 | <0.2 | 0.8 | 0.6 | 1 | <0.9 | <6.8 | <0.5 | 2 |
| 206 | Shampoo | Tube near stripes | 0.2 | <3 | 24 | <0.2 | 0.6 | <1 | <1.1 | <1.2 | <9.0 | <0.5 | 1 |
| 207 | Bobble bath | Near valve (soft plastic, PVC) | 30 | 15 | 7 | <0.4 | 1 | 3 | 360 | <2.6 | 45 | 2 | 3 |
Per-element maximum total values observed across the 10 packaging samples (Table 5.14, p. 63; cosmetic-product packaging maxima compared to EN 71-3 limit values for migration of substances from toy materials in mg/kg):
| Element | EN 71-3 max migration (mg/kg) | Maximum total value measured in packaging (mg/kg) | Ratio (limit / max measured) |
|---|---|---|---|
| Cr | 60 | 15 | 4× below |
| As | 25 | 1.4 | ~18× below |
| Se | 500 | 1.1 | ~450× below |
| Cd | 75 | 3.4 (note 1) | ~22× below |
| Sb | 60 | 12 | 5× below |
| Ba | 1000 | 52 | ~19× below |
| Hg | 60 | 2 | 30× below |
| Pb | 90 | 4 | ~22× below |
Note 1: Table 5.14 reports the Cd maximum as 3.4 mg/kg; Table 5.13 per-sample values show 3 ppm at ID 207 as the highest enumerated Cd value (other samples are 2, 0.8, 0.7, 0.6, 0.5, 0.4, 0.3 or <1/<0.5). The 3.4 figure in Table 5.14 is preserved as the source reports it; the small discrepancy with Table 5.13’s 3 ppm rounding is a paper-internal precision difference rather than a transcription error.
The report does NOT enumerate per-element EN 71-3 maxima for Ni or Sn in Table 5.14, but Table 5.13 maxima are: Ni 32 ppm (ID 184 body lotion/cream tube) and Sn 360 ppm (ID 207 bobble bath near valve). Both are total-content values, not migration values; the in-text discussion (p. 62) explains the 360 ppm Sn outlier as a likely use of “sulphurous organic tin compounds” as PVC heat stabilisers per Plastics Additive Handbook (Hanser Publications, 2001).
Companion non-heavy-metals findings on the same product survey (reported here for context; not for routing to metal pages):
- Phthalate content in 10 packaging materials (Table 5.15, p. 64; quantitative GC-MS): DEHP, DINP, and a tentatively identified DEHIP (possibly DnOP — lacking reference standard) were the phthalates found; maximum total phthalate content was 31% in soft-plastic figure-designed bath packaging. Five packaging materials contained 26-31% DEHP or DINP (IDs 5 DEHP 27%, 33 DEHP 26%, 34 DEHP 27%, 128 DINP 31%, 196 DINP 28%); ID 207 contained 26% DEHIP/DnOP; ID 21 contained 0.4% DEHP plus 15% DEHIP/DnOP; ID 27 was softened with citric acid tributylesteraetat (acetyltributylcitrat) at < 0.05% phthalate; ID 32 contained 11% DEHIP/DnOP; ID 82 had no detectable plasticiser content. DEHP, DINP, and DnOP were banned from April 2007 in toys for children up to 14 years and in child-care articles above 0.1% (DINP and DnOP only in mouthable items).
- Chlorine screening in 14 packaging materials (Table 5.12, p. 61; Beilstein’s test plus XRF): 11 of 14 returned positive for chlorine (one of which, ID 82, was mixed +/- across two parts), confirming PVC composition. The three packaging materials returning negative for chlorine across all sampled parts (IDs 40, 193, 206) were of different plastic types — confirmed by trace XRF Cl values of 0.01%, 0.05%, and 0.2% respectively, well below the percent-level Cl content expected of PVC.
- 26 mandatory-declaration fragrances in 17 cosmetic-product samples (Table 5.7, pp. 52-57; GC-MS; ranges per fragrance reported, max single fragrance 3400 mg/kg butylphenylmethylpropional (Lilial) in an eau de toilette): six of 17 analysed products had declaration that did not match analysis results (illegal under the Cosmetics Statutory Order if produced after 10 March 2005).
- Kathon preservative (chlormethyl-isothiazolone + methyl-isothiazolone, 3:1) in 11 cosmetic-product samples (Table 5.10, p. 59; HPLC-UV; range 3.0-12 mg/kg): all 11 below the 15 mg/kg maximum allowed concentration; three of the 11 had detectable Kathon without it being declared on the product (Cosmetics Statutory Order deviation).
The 208 mapped products span (Project results, pp. 8-9): body shampoo/bath gel; bath confetti/caviar/fizzle salt; shampoo; bobble bath; toothpaste; body lotion/cream; soap (solid); eau de toilette - perfume; bath oil; “others” (e.g., body spray); hair dye (rinsing colour); balsam; hairstyling products; deodorant; massage oil; soap (liquid). The volume of yearly sales is not reported; 461 different constituents were found across the 208 products (average 16 per product); 74% of products contained perfume; 63% contained preservatives; 57% contained colouring agents; none contained triclosan; 27% had packaging designed as a special figure; another 24% had figure-decorated packaging without the figure being the package shape; 19 of the 56 figure-shaped products were indicatively classified by the Danish Safety Technology Authority as toys under the Toys Directive.
Methods (brief)
Heavy metals in packaging — analytical method (Section 5.3.1.1, p. 60): X-ray fluorescence (XRF) on a Spectro X-LAB 2000 instrument. All elements at atomic number ≥ 11 (Na) detected. Surface analysis to approximately 100 µm depth depending on material. Detection limit reported as < 10 ppm in general per the instrument specification, and operationally 1 mg/kg for the heavy-metals quantitative analysis (Table 5.11, p. 60). Relative uncertainty: ±10%. Total-content values only — these are NOT migration values from EN 71-3 leach testing. Sample selection (Section 5.1.3, p. 48): 10 of 208 products selected for heavy-metals analysis with emphasis on strongly coloured packaging (highest a-priori probability of pigment-based heavy-metal content) and common product types (body shampoo/bath gel, shampoo, bobble bath) plus body lotion/cream and hairstyling product chosen for strongly coloured packaging materials. Figure-designed packaging was weighted in selection because such items might be used as toys and put in the mouth by small children/siblings, motivating heavy-metals screening against toy-directive limits.
Phthalates in packaging — extraction with dichloromethane and analysis by GC-MS on a Varian Saturn 2000 ion-trap system; detection limit migration 0.005 mg/l, quantitative 0.001 W/W%; ±10% relative uncertainty (Section 5.3.1.3 / Table 5.11, p. 60).
Polymer identification — Beilstein’s test (qualitative chlorine flame test as PVC screen) carried out on all packaging polymer samples (Section 5.3.1.2, p. 60).
Fragrances — partial sample extracted in water plus tert-butylmethyl ether with suspension/heating/cooling for ~16 hours; GC-MS, repeat determinations; detection limit 1 mg/kg; 10-15% RSD (Section 5.2.1.1, p. 50).
Kathon — ~2.5 g sample extracted and diluted in demineralised water, 0.45 µm filtered, HPLC-UV (212 and 280 nm; 35% methanol / 65% water isochratic; 0.500 mL/min; 15 min run); detection limit 2 mg/kg; 10-15% RSD (Section 5.2.1.2, p. 50).
Speciation: total content only for all metals (XRF is a total-elemental technique; no inorganic-vs-organic Pb, As, Hg, Cr speciation). Per Part 14, this paper’s metals enter the wiki as tAs (not iAs), tHg (not MeHg), Cr (not Cr-VI), Sn (not organotins) even though the report’s discussion proposes that the high Sn value at ID 207 is from organic-tin heat-stabilisers. The Sn measurement itself does not separate inorganic from organic tin; the organic-tin attribution is a discussion-section hypothesis based on prior literature on PVC additives, not a speciation measurement.
Risk-assessment scope of the report: the report’s quantitative risk assessments (Chapter 7) cover Kathon and benzyl alcohol acute toxicity only, not heavy metals. The heavy-metals discussion (Section 8.2, p. 94) explicitly does NOT compute risk because total content is well below toy-migration limits and migration testing was not conducted.
Implications
- Certification (HMTc): The packaging-only scope is important to preserve in any downstream use. This source contributes packaging-material total-content data on children’s cosmetic-product containers for ten metals; it does NOT contribute occurrence data on heavy metals in the cosmetic formulations themselves. For HMTc threshold work on children’s personal care (Cat 2) — where the certified analyte is concentration in the product as placed on market — these values are NOT direct occurrence inputs to threshold percentile pools. They are relevant as context for a separate question: whether colourful, figure-designed plastic packaging contributes meaningful heavy-metals exposure to the child via dermal contact or hand-to-mouth transfer (the report itself concludes “no” relative to EN 71-3 toy migration ceilings, based on total content well below migration limits and without performing migration testing). The 360 ppm Sn outlier in PVC bath-packaging is the single value that an HMTc reviewer might revisit if Cat 2 threshold work extends to packaging composition.
- Courses: Useful as a teaching case for (a) the distinction between total content and migration limits, (b) the EU Toys Directive vs. Cosmetics Directive intersection when a cosmetic product’s packaging is figure-shaped enough to qualify as a toy, and (c) the policy logic of using XRF as a cheap upstream screen with EN 71-3 migration testing reserved only for samples above a total-content trigger threshold.
- App: Not relevant to ingredient
contamination_profile(the paper does not measure metals in cosmetic ingredients or in cosmetic formulations). - Microbiome: Not addressed.
Wiki pages this source may touch
- lead
- cadmium
- mercury-total
- arsenic-total
- chromium
- nickel
- tin
- antimony
- barium
- children-personal-care
- baby-lotion-cream
- baby-shampoo-body-wash
Verification notes
- 2026-05-18 fresh ingest (Claude Opus 4.7, autonomous v2.0 manual-fetch skill, daemon tick): NEW path. Three identity checks against
wiki/sources/returned no hits: no DOI present in source (Danish EPA project report, pre-DOI for this series); raw_handleMFK_survey-health-assessment-cosmetic-children-denmarknot present; cite-key stempoulsen2007not present. PDF SHA-256fcb5d3c9da4558bda2af3cd1daf847ecfc3a86de27bb6e1e64161717e7311c0f. evidence_tier: A: Danish EPA government report (Miljøstyrelsen, Survey of Chemical Substances in Consumer Products series), commissioned analyses by Eurofins (constituents) and FORCE Technology (packaging). Government regulatory authority report with primary data. A-tier per Part 13 evidence grading.metals: [Pb, Cd, tHg, tAs, Cr, Ni, Sn, Sb, Ba, Se]uses non-speciated abbreviations because XRF is a total-elemental technique.tAsnotiAs;tHgnotMeHg;CrnotCr-VI;Snnotorganotins. Selenium (Se) is not in the strict Part 14 abbreviation list but is in the wiki metals taxonomy via the broader vocabulary precedent (Fe, Cu, Zn, Co used in jitareanu2025); Se is retained because the paper measures it directly.products:routing rationale:children-personal-care(Cat 2 umbrella) — direct evidence; this is the report’s whole survey frame. All 10 heavy-metals-tested products are children’s cosmetic products in scope of this umbrella.baby-lotion-cream(Cat 2 row) — direct evidence for 3 of 10 HM-tested products (IDs 166, 184, 193 body lotion/cream). The “baby-” prefix in the slug is a wiki-taxonomy choice; the report’s age scope is 3-14 years, broader than infant. Routing here treatsbaby-lotion-creamas the closest available product slug for the lotion/cream subcategory; if a future taxonomy revision splits children-personal-care into infant vs older-child rows, this routing should be revisited.baby-shampoo-body-wash(Cat 2 row) — direct evidence for body shampoo/bath gel (IDs 27, 32), shampoo (IDs 74, 206), and bobble bath / bubble bath (IDs 21, 207). Samebaby-prefix caveat as above; the report covers 3-14 year-olds.- The hairstyling product (ID 40) does not map to a specific row in the current taxonomy; covered by the
children-personal-careumbrella.leave-on-hair-preparationsis an adult-leave-on slug that does not fit children’s hairstyling products.
matrices: [cosmetic-personal-care]follows the established bare-string matrix vocabulary in use across cosmetic-occurrence sources (arshad2020, attard2022, bashir2025, jitareanu2025, opss2023, rbeida2023, sccs2023, li2021).jurisdictions: [DK, EU]: study site is Denmark (Copenhagen area and northern Zealand retail, plus Internet); regulatory frame is the Danish Cosmetics Statutory Order (Stat. Ord. 422 §25, 2006), Danish Safety Technology Authority Toys Directive scope assessment, and EU-wide Cosmetics Directive plus EN 71-3 toy-migration standard. EU is included for the regulatory-frame reference, DK for the sampling jurisdiction.- Empty
ingredients:is intentional: the report’s heavy-metals analyses are on packaging materials, not cosmetic ingredients. The 461 constituents identified across the 208-product survey are reported at constituent-class level (fragrances, preservatives, colouring agents, etc.) without per-ingredient occurrence data tied to a specific food/personal-care ingredient slug in this wiki’s taxonomy. doi: null/no_doi_assigned: true: this Danish EPA Survey of Chemical Substances in Consumer Products series report (No. 88, 2007) does not carry a DOI. The Danish EPA serial number is the primary identifier.access_url: https://eng.mst.dk/publications/points to the English-language Danish EPA publications catalogue root rather than a guessed deep-link to this specific Survey-No.-88 PDF.- Brand firewall (Part 12, strict reading locked 2026-05-17): the report’s Table 5.13 and other quantitative tables identify samples only by anonymous ID numbers (21, 27, 32, 40, 74, 166, 184, 193, 206, 207); no brand names are attached to per-sample values. No brand-attribution stripping was necessary for this page. Vendor names cited per Exception 2 (scientific-method vendors): Spectro X-LAB 2000 XRF, Varian Saturn 2000 ion-trap GC-MS, Eurofins (analyst), FORCE Technology (analyst), Hanser Publications (Plastics Additive Handbook reference).
- Wiki/HMTc firewall (Part 2): the report’s overall conclusion is that the measured packaging total-content heavy-metals values “do not give cause for health concern” relative to EN 71-3 toy-migration ceilings. This wiki page reports that conclusion as a paper-internal claim without adopting it as the wiki’s voice and without proposing HMTc threshold values. The Implications section frames the source as packaging-only context for Cat 2 children-personal-care threshold work, not as a direct percentile-pool input.
- Total-vs-migration distinction is the most load-bearing fact about this source for downstream use; preserved explicitly in the table caption, the EN 71-3 comparison table, and the Implications section.
- Note on the 360 ppm Sn outlier (ID 207 bobble bath near valve): the report’s discussion (p. 62) attributes this to “sulphurous organic tin compounds” used as PVC heat stabilisers per Plastics Additive Handbook (Hanser, 2001). The XRF measurement itself does not speciate inorganic vs organic tin; the organic-tin attribution is a discussion hypothesis, not a speciation finding. Sn is retained in
metals:(notorganotins) because the underlying measurement is total elemental Sn. - Note on the Cd discrepancy between Table 5.13 and Table 5.14: Table 5.14 reports max Cd as 3.4 ppm; Table 5.13 per-sample enumeration shows 3 ppm at ID 207 as the highest displayed Cd value. The 0.4 ppm difference is preserved as the source reports it (Table 5.13 likely rounds to integer ppm for display; Table 5.14 reports one decimal place). Both numbers are reproduced here without choosing one over the other.
- 2026-05-18 duplicate-PDF registration (Claude Opus 4.7, autonomous v2.0 manual-fetch skill, daemon tick): the babycare_04 folder contains a second copy of this same PDF filed under filename
Survey_of_Chemical_Substances_in_Consumer_Products_No_88_-_A_survey_and_health.pdf. SHA-256 confirmed bit-identical to the canonical babycare_03 copy. Added tonear_duplicatesso subsequent ingest passes recognise it as already-ingested. No content changes to this page; the source page itself remains unchanged. - Audit subagent (2026-05-18, fresh-context general-purpose, autonomous v2.0 manual-fetch skill): REVISE verdict; 2 findings applied, 0 rejected.
- CHECK 1 ⚠️ Phthalate ID-to-analyte attribution: prior wiki text said “Six packaging materials contained 26-31% DEHP or DINP (IDs 5, 33, 34, 128, 196, 207)” but Table 5.15 (p. 64) shows ID 207’s 26% is in the DEHIP/DnOP column, not DEHP or DINP. Verified independently against Table 5.15. Corrected to enumerate the five DEHP/DINP IDs (5, 33, 34, 128, 196) separately from ID 207’s DEHIP/DnOP attribution. The DEHIP-vs-DnOP tentative-identification caveat (footnote 1 of Table 5.15) is preserved.
- CHECK 1 ⚠️ Chlorine-negative packaging count: prior wiki text said “The two negative-for-chlorine packaging materials (IDs 40, 193 in certain parts)” but Table 5.12 (p. 61) shows IDs 40, 193, AND 206 all return
-across all sampled parts (with trace XRF Cl values of 0.01%, 0.05%, 0.2% respectively, well below percent-level PVC content). Verified independently against Table 5.12. Corrected to three pure-negative samples, and adjusted the positive count to “11 of 14 returned positive” (one of which, ID 82, is mixed +/-) to match the per-row tally. - CHECK 1 ⚠️ FALSE POSITIVE (auditor’s
⚠️ Unverifiednote on Lilial 3400 mg/kg): the value is in Table 5.7 (p. 57) under product ID 209 eau de toilette, column “A” 3400 and column “B” 3400 in the Butylphenyl methylpropional (Lillial) row. The audit subagent did not re-read pp. 52-57 so flagged as unverified; verified during audit application against Table 5.7. No change. - CHECK 2, CHECK 3, CHECK 4, CHECK 5: ✅ clean per audit.
Page history
The five most recent substantive edits to this page. The full version history lives in git; when DOI minting comes online (see schema docs), each entry below will also link to a version-pinned DataCite DOI.