How Acrylis Works
A transparent look at our privacy-first analysis engine and scientific methodology.
๐Privacy-First Architecture
Acrylis runs entirely in your web browser. When you paste an ingredient list and click "Analyze," the processing happens locally on your device using JavaScript. Your ingredient lists are never sent to any server, stored in any database, or shared with anyone.
This means the analyzer works instantly without waiting for server responses and even functions offline once the page has loaded. Your privacy is protected by design โ that was important to me from the very beginning.
โ๏ธStep 1: Parsing Your Ingredient List
When you paste an ingredient list into the analyzer, the tool first splits it into individual ingredients. It recognizes common delimiters including commas, periods, semicolons, and newlines.
The parser also handles parenthetical content, such as "CI 77891 (Titanium Dioxide)," by normalizing the ingredient name while preserving the full original text for accurate matching. Extra whitespace, capitalization differences, and common formatting variations are all normalized to ensure consistent matching.
๐ฏStep 2: Exact Match Search
Each parsed ingredient is first checked against the database using exact string matching (case-insensitive). The acrylates database contains over 90 known acrylate compounds and cross-reactors, each paired with an explanation of why the ingredient is flagged.
The fungal acne trigger database contains over 45 known Malassezia-feeding ingredients. If an exact match is found, the ingredient is immediately flagged with its classification and a detailed explanation.
๐งชStep 3: Substring and Pattern Matching
If no exact match is found, the algorithm performs substring matching against known acrylate-related terms. This catches ingredients whose names contain recognizable acrylate fragments, such as ingredients ending in "-acrylate," "-methacrylate," or containing terms like "acrylamide" or "cryl."
Substring matches are flagged with an "Unknown" classification because the exact compound may or may not be problematic depending on its specific chemical structure. The algorithm also checks for certain polyquaternium compounds and resin-based ingredients that may use acrylate chemistry.
๐ก๏ธStep 4: False Positive Filtering
Not every ingredient containing acrylate-related substrings is actually problematic. The false positive filter excludes specific copolymers and compounds that have been verified as non-acrylate and non-allergenic, preventing unnecessary flags.
This filter is continuously updated as new information becomes available from dermatological research and community feedback.
๐Step 5: Results and Grading
The analyzer produces a detailed breakdown of all identified ingredients, categorizing each as "Safe," "Unsafe," or "Unknown." Unsafe ingredients include the specific reason they are flagged and practical guidance.
The overall result is graded on a scale from A+ (no issues found) to D (multiple high-risk ingredients detected), with ingredient position in the list taken into account (ingredients in the top five positions are weighted more heavily because they are present in higher concentrations).
๐My Data Sources
The acrylates database is compiled from the American Academy of Dermatology clinical guidelines, the North American Contact Dermatitis Group allergen prevalence data, DermNet NZ, and the Contact Dermatitis Institute.
The fungal acne trigger database draws from the Simple Skincare Science research compilation, Folliculitis Scout, and peer-reviewed research published through NCBI on Malassezia lipid metabolism. For a full list of sources, visit the References page.
๐ก Tips for Accurate Results
- โCopy the entire ingredient list exactly as it appears on the product label.
- โInclude all parenthetical content (some acrylates hide there!).
- โRe-check products after any formula change or reformulation.
- โRemember that individual reactions vary โ use results as a guide.