How I Built the Acrylis Ingredient Database: Methodology and Sources
Transparency is important to me. I believe users deserve to understand how the ingredient analyser works, what data it relies on, and what its limitations are. This article provides a detailed look at the methodology behind the acrylate and fungal acne trigger databases, the matching algorithm that powers the analysis, and my approach to maintaining and improving the data over time.
Data Sources
The ingredient databases are compiled from a combination of peer-reviewed scientific literature, established dermatological resources, and community-driven databases that have been validated by healthcare professionals. For the acrylates database, the primary sources include the American Academy of Dermatology (AAD) clinical guidelines on contact dermatitis, the North American Contact Dermatitis Group (NACDG) allergen prevalence data, DermNet NZ's comprehensive clinical resource on acrylate allergy, and the Contact Dermatitis Institute's allergen database.
For the fungal acne trigger database, the primary sources include the extensively researched Simple Skincare Science guide to Malassezia folliculitis, which compiles ingredient safety data from multiple dermatological studies and community testing. I also reference the Folliculitis Scout database, peer-reviewed research published through the National Center for Biotechnology Information (NCBI) on Malassezia lipid metabolism, and clinical guidelines from dermatological organisations on the management of Malassezia-related skin conditions.
Ingredient Classification
Each ingredient in my database is classified based on its known potential to cause allergic reactions or trigger Malassezia proliferation. For acrylates, ingredients are classified into three categories: "Unsafe" for ingredients that are established contact allergens with strong evidence from dermatological research; "Unknown" for ingredients that are chemically related to acrylates (such as certain copolymers and resins) but for which the allergenic potential is less well-characterised; and "Safe" for ingredients that are not known to be acrylates or cross-reactors.
For fungal acne triggers, ingredients are similarly classified based on their potential to feed Malassezia yeast. This classification considers the fatty acid composition of the ingredient, whether it can be hydrolysed by Malassezia lipase enzymes, and the available evidence from clinical studies and community reports. I err on the side of caution, flagging ingredients as triggers when there is reasonable evidence of risk, even if the evidence is not yet conclusive.
The Matching Algorithm
The Acrylis analysis tool uses a multi-stage matching algorithm to identify problematic ingredients. The first stage is exact matching: the input ingredient string is compared against my database using case-insensitive string comparison after normalising whitespace and common formatting variations. If an exact match is found, the ingredient is immediately flagged with its classification and explanation.
The second stage is substring matching: if no exact match is found, the algorithm checks whether the input ingredient contains known acrylate-related substrings. These include terms like "acrylate," "acrylamide," "methacryl," and "cryl," among others. Substring matches are flagged with an "Unknown" classification, as the exact compound may or may not be problematic depending on its specific chemical structure.
The third stage handles polyquaternium compounds and resin-related ingredients. Polyquaternium ingredients (commonly used as conditioning agents in haircare) are checked because some polyquaternium compounds use acrylate-based chemistry in their synthesis, though many are considered safe. Similarly, ingredients containing "resin" or "copolymer" in their name are flagged for review when no exact match is found, as some of these may contain acrylate monomers.
An important feature of the algorithm is the false positive filter. Certain ingredients that contain acrylate-related substrings but are not themselves acrylates or allergens are excluded from substring matching. For example, specific copolymer entries that have been verified as non-acrylate and non-allergenic are excluded to prevent unnecessary flags. This filter is continuously updated as new information becomes available.
Privacy and the Client-Side Architecture
One of the distinguishing features of Acrylis is that all analysis runs entirely in your browser. When you paste an ingredient list and click "Analyse," the processing happens on your device using JavaScript code that is part of the website. Your ingredient list is never transmitted to any server, stored in any database, or shared with anyone. This architecture was a deliberate design choice to protect user privacy, as ingredient lists can reveal personal health information and product preferences.
The practical implication of this client-side architecture is that the analyser works instantly, without waiting for server responses, and functions even without an internet connection once the page has loaded. However, it also means that the database cannot be updated in real-time — updates require publishing a new version of the website. I currently update the database approximately quarterly, incorporating new research findings and community feedback.
Limitations and Future Plans
I want to be transparent about the limitations of the current system. The database, while comprehensive, is not exhaustive. New cosmetic ingredients are developed regularly, and novel acrylate derivatives or Malassezia-feeding compounds may not yet be included. The substring matching algorithm may produce both false positives (flagging safe ingredients that contain acrylate-related substrings) and false negatives (missing acrylates that use non-standard naming). Individual skin reactions vary, and an ingredient that triggers a reaction in one person may not affect another.
Looking forward, I plan to implement several improvements to the system. These include adding a user feedback mechanism to report suspected false positives or false negatives, developing a more sophisticated matching algorithm that accounts for chemical structure rather than just string patterns, expanding the database to cover additional allergen categories (such as fragrances and preservatives), and consulting with dermatological researchers to validate and refine the classifications.
I'm committed to continuous improvement and welcome feedback from both users and healthcare professionals. If you notice an ingredient that you believe is incorrectly classified, please get in touch through my contact page with the specific ingredient name and any supporting evidence, such as a research paper or clinical guideline.