Managing Your Ingredient Database: Custom Ingredients and Synonyms
Learn how to manage the Formul.io ingredient database, add custom ingredients with composition data and allergen flags, use synonyms for fuzzy search, and maintain accurate pricing for recipe costing.
Why Your Ingredient Database Matters
In professional confectionery, every calculation is only as accurate as the ingredient data behind it. Water activity predictions, shelf life estimates, recipe costing, and allergen summaries all depend on one foundational layer: knowing exactly what is in each ingredient you use. An inaccurate fat percentage in your cream, a missing allergen flag on a compound chocolate, or a stale price on a couverture block will silently corrupt every formula that references it.
Formul.io ships with a curated database of standard confectionery ingredients — covering the sugars, fats, dairy products, chocolates, stabilizers, and hydrocolloids that appear in most professional kitchens. But no universal database can anticipate every branded ingredient, regional specialty, or in-house blend you work with. The custom ingredient system exists precisely to close that gap: to let you extend the shared database with the specific ingredients that define your production, and to make those ingredients searchable, reusable, and always up to date.
What the Default Database Includes
The Formul.io default ingredient library covers: - Sugars: sucrose, glucose syrup (DE 28–65), dextrose, invert sugar, trehalose, isomalt, sorbitol, xylitol - Dairy: fresh cream (35%), whipping cream (38%), butter, whole milk, skim milk, condensed milk, crème fraîche - Chocolates: dark couverture (55%, 64%, 70%, 75%, 85%), milk couverture, white couverture, cocoa powder, cocoa butter - Stabilizers and hydrocolloids: NH pectin, LM pectin, gelatin (180 and 220 bloom), agar, carrageenan, xanthan gum - Fats and emulsifiers: sunflower oil, coconut oil, PGPR, lecithin - Fruits: standard purees (passion fruit, raspberry, mango, strawberry, lemon) at typical Brix values - Nuts: almond, hazelnut, pistachio, cashew (whole and paste forms) Ingredients not in this list require a custom entry.
When You Need a Custom Ingredient
Even a comprehensive default database will miss ingredients that are specific to your operation. The most common situations that require a custom ingredient entry are set out below. Understanding which scenario applies to you determines which composition data you will need to gather before adding the ingredient.
| Scenario | Example | Data Source |
|---|---|---|
| Branded couverture not in the library | Valrhona Guanaja 70%, Cacao Barry Ocoa 70% | Supplier technical sheet or CoA |
| Local or regional supplier ingredient | Cream at 36% fat from your dairy cooperative | Supplier specification |
| In-house blend or compound | House praliné paste (60% hazelnut, 40% sugar) | Your own recipe or lab analysis |
| Specialty or rare ingredient | Yuzu juice at 8°Brix, black garlic powder | Lab analysis or ingredient supplier data |
| Allergen-specific alternative | Rice milk, oat cream, soy lecithin | Product label or supplier specification |
| Branded additive or stabilizer | Sosa Procrema 100, Texturas Metil | Supplier technical sheet |
| Seasonal produce at known composition | Fresh blackcurrant purée at 12°Brix | Refractometer + lab or published tables |
Common scenarios requiring custom ingredient entries
Check the Default Database First
Before adding a custom ingredient, search the default database thoroughly. A branded chocolate at 70% cacao will have very similar composition to the default 'dark couverture 70%' entry — close enough for most formulation work. Creating a custom entry for every SKU from your supplier adds maintenance overhead without meaningful accuracy gain. Add custom entries only when composition genuinely differs from available defaults, or when exact allergen data matters for labeling.
Adding a Custom Ingredient: Step by Step
Custom ingredients are added through the Ingredient Database section of Formul.io. Each custom ingredient is private to your account — it will not appear in other users' searches. The following steps walk through the complete process of creating a well-documented custom ingredient that will serve you reliably across all your recipes.
Enter the primary name
Use the ingredient's most specific and official name as the primary entry: the name that appears on the supplier specification or product label. For a branded chocolate, use the full product name: 'Valrhona Guanaja 70%' rather than just 'dark chocolate'. For an in-house blend, use a consistent naming convention that includes the defining characteristic: 'House Hazelnut Praliné 60%'. Avoid abbreviations in the primary name — they make future searching harder.
Add synonyms for fuzzy search
Synonyms are alternative names that the search engine will recognize when you type them. Add every name you or your team might realistically use when searching: the brand nickname ('Guanaja'), the generic category ('dark chocolate 70%'), common abbreviations ('GJ70'), and any predecessor names if you renamed the ingredient. A well-synonymized ingredient is found reliably regardless of how the user searches for it.
Enter composition data
Fill in the four core composition fields: fat %, water %, sugar/carbohydrate %, and protein %. These must be taken from the ingredient's technical data sheet or nutrition facts panel — never estimated from general tables unless you have no other source. The four values should sum to approximately 100% when added to fiber, ash, and other components. If you have the full nutrition breakdown, enter all available fields. If you only have partial data, enter what you have and note the limitation.
Set the water activity (Aw) if known
If your ingredient supplier provides a measured water activity value, enter it directly. This measured Aw will be used in place of the system's estimate when calculating recipe Aw. If you do not have a measured value, leave this field blank — Formul.io will estimate Aw from the composition data using standard models. For liquid ingredients and high-water-content foods, this estimate is generally accurate to ±0.02 Aw units. For dry powders and crystalline sugars, the estimate may vary more widely.
Enter the cost per kilogram
Enter your current purchase price per kilogram in your account's configured currency. Use the actual landed cost — the price you pay per kilogram including any delivery fees allocated per kilogram. Do not use list prices. This cost is used in recipe cost breakdowns across all recipes that include this ingredient. Add a note in the ingredient description reminding yourself when to review the price, particularly for volatile commodities like cocoa products, dairy, and nuts.
Flag applicable allergens
Select every allergen that applies to this ingredient from the EU 14 major allergen list. This is a critical step: the system uses your allergen flags to generate allergen summaries for every recipe containing the ingredient. Errors here propagate into mislabeled products. When in doubt, check both the product label and the supplier's allergen statement — some ingredients carry 'may contain' cross-contamination warnings that you may choose to flag as precautionary.
Save and verify
After saving, add the new ingredient to a test recipe and verify that the calculated Aw, cost, and allergen summary look correct. Check that the ingredient appears in search results when you type each of your synonyms. If any synonym fails to surface the ingredient, return to edit and add or adjust it.
Composition Data: Getting the Numbers Right
The composition fields — fat, water, sugar, and protein percentages — are the most technically demanding part of a custom ingredient entry. They directly determine water activity calculations, and therefore shelf life predictions. Getting them wrong means getting every recipe that uses the ingredient wrong.
Preferred Sources for Composition Data (in order of reliability)
1. Supplier Certificate of Analysis (CoA): The most accurate source — reflects the actual batch composition. 2. Supplier Technical Data Sheet: Standard values for the product; updated less frequently than CoA. 3. Nutrition Facts label (EU Regulation 1169/2011 format): Legally required to be accurate; suitable for ingredient entry. 4. Published food composition databases (USDA FoodData Central, Ciqual/Anses, UK Nutrient Databank): Use for generic commodity ingredients with no supplier-specific data. 5. Estimation from recipe + lab results: For in-house blends you have made and either sent for analysis or can calculate exactly from known components. Never use online recipe blogs, general food encyclopaedias, or unverified sources. The composition accuracy of your recipes depends on the accuracy of each ingredient entry.
For dark couverture chocolate, the key values are fat (typically 38–44% depending on the recipe — cocoa butter plus any added fats), water (typically 1–2% — chocolate is a low-water product), total carbohydrate (typically 45–55%, of which 30–45% is sugars), and protein (typically 5–8%). For cream, water content is the most variable and most important value: cream at 35% fat contains approximately 59–62% water; cream at 38% fat contains approximately 56–59% water. Even a 3% error in cream water content will shift the Aw calculation in a ganache by approximately 0.015 units — enough to affect shelf life predictions meaningfully.
| Ingredient Category | Fat % | Water % | Sugar % | Protein % | Notes |
|---|---|---|---|---|---|
| Dark couverture 70% | 40–43 | 1–2 | 26–30 | 6–8 | Cocoa butter + lecithin fat; sugar = sucrose only |
| Fresh cream 35% | 35 | 60–62 | 3–4 | 2–3 | Lactose counts as sugar for Aw purposes |
| Fresh cream 38% | 38 | 56–59 | 3–4 | 2–3 | Higher fat, proportionally less water |
| Nut paste (hazelnut) | 60–65 | 2–5 | 4–6 | 13–16 | Natural fat; minimal sugar unless sweetened |
| Fruit purée 10°Brix | 0–1 | 88–90 | 8–11 | 0–1 | Brix ≈ sugar %; verify with refractometer |
| Glucose syrup DE 40 | 0 | 18–22 | ~78 | 0 | Dry matter ~80%; water content matters for Aw |
| Invert sugar syrup 75°Brix | 0 | 22–25 | 73–76 | 0 | Fructose + glucose 1:1; hygroscopic |
| Whole egg (liquid) | 10–11 | 73–75 | 0–1 | 13 | Note: eggs are a major allergen |
| Almond flour (blanched) | 50–55 | 5–7 | 4–6 | 22–25 | Tree nut allergen; gluten-free if dedicated facility |
Reference composition for common custom ingredient categories (use supplier data in preference to these values)
Composition Values Must Account for 100%
Fat + Water + Carbohydrate + Protein + Fiber + Ash should sum to approximately 100%. If your four core values (fat, water, sugar, protein) total only 85%, the remaining 15% is fiber, ash, and other components. This matters for Aw calculation: water percentage is used directly in the free water estimate. If the nutrition panel shows total carbohydrates at 55% but sugar at only 30%, the non-sugar carbohydrates (starch, fiber) do not bind water the same way sugar does. Enter the sugar figure (30%) in the sugar field, not total carbohydrates.
Synonyms and Fuzzy Search: Making Ingredients Findable
The Formul.io ingredient search uses fuzzy matching — it will find ingredients even if you misspell the name, use a partial match, or type a synonym rather than the primary name. Fuzzy search is only as useful as the synonym list you have built for each ingredient. An ingredient with no synonyms is only findable by its exact primary name. An ingredient with a rich set of synonyms surfaces reliably under every term your team might use.
When entering synonyms, think about every realistic search path to this ingredient. A branded single-origin dark chocolate might be found by: the brand name alone ('Valrhona'), the product line name ('Guanaja'), the cacao percentage ('70%', '70 percent'), the generic category ('dark chocolate'), the country of origin ('Madagascar chocolate'), and any internal code your kitchen uses ('VG70'). Add all of these as synonyms. There is no practical limit on the number of synonyms per ingredient.
Synonym Strategy for Professional Teams
In a multi-user kitchen, synonyms serve a second purpose: they enforce ingredient identity across team members who may have learned different names for the same thing. If your sous chef calls it 'dark couverture 70' and your pastry chef calls it 'Guanaja', and both are synonyms for the same database entry, both searches return the same ingredient — preventing the accidental creation of duplicate entries with divergent composition data. Standardize ingredient names in your database as a team and communicate the naming convention.
| Primary Name | Recommended Synonyms |
|---|---|
| Valrhona Guanaja 70% | Guanaja, dark chocolate 70, dark couverture 70, VG70, Valrhona 70, dark choc |
| Cacao Barry Ocoa 70% | Ocoa, CB Ocoa, dark couverture 70, dark chocolate 70, Ocoa 70 |
| Isigny Sainte-Mère Cream 35% | Isigny cream, fresh cream 35, single cream, whipping cream 35, crème fraîche légère |
| House Hazelnut Praliné 60% | hazelnut praline, praline 60, hazelnut paste, home praline, NK praline |
| Sosa Procrema 100 | Procrema, ice cream stabiliser, Sosa stabiliser, PC100, neutral stabiliser |
| Yuzu Purée 10°Brix | yuzu, yuzu juice, yuzu puree, Japanese citrus, citrus purée yuzu |
Example synonym sets for common custom ingredients
Setting and Maintaining Ingredient Prices
Ingredient prices in the database are the foundation of recipe costing. When you open any recipe in Formul.io, the cost breakdown is calculated in real time from the quantity of each ingredient multiplied by its cost per kilogram. If your ingredient prices are stale, your recipe costs are wrong — and pricing decisions based on wrong costs can silently erode your margins.
Enter the price you actually pay, not the supplier's list price. For ingredients you buy in bulk — 25 kg chocolate slabs, 10 L cream containers — divide the total invoice cost by the net weight. For ingredients where you pay delivery charges, allocate those charges per kilogram of product: if you pay €8 delivery for a 10 kg order, add €0.80 per kilogram to all ingredient prices on that order. Your true landed cost per kilogram is the only figure that gives meaningful recipe costing.
When to Update Prices
Cocoa product prices can move 20–40% in a quarter during volatile periods (as seen in 2023–2024 when cocoa futures rose sharply). Dairy prices follow seasonal patterns, typically peaking in late summer. Set a calendar reminder to review ingredient prices at minimum quarterly, and immediately whenever a supplier issues a new price list or you switch supplier. A single cocoa price entry left at last year's rate will make every ganache, every truffle, and every praline appear more profitable than they are.
Identify ingredients due for price review
Sort your custom ingredients by date last updated. Any ingredient not reviewed in the past 90 days should be checked. Pay special attention to cocoa products, cream, and nut pastes — these are the highest-volatility categories for artisan confectioners.
Obtain current prices
Pull the most recent invoice for each ingredient from your accounts system, or request a current price list from your supplier. For commodities where you have a standing contract, verify whether the contract price still reflects your actual order costs including any surcharges.
Update the ingredient database
Edit each ingredient and update the cost per kilogram field. Save, then open one or two representative recipes to confirm the cost breakdown has updated correctly. If a price change is significant (>10%), review the pricing of finished products that depend heavily on that ingredient.
Note the review date
Add the current date to the ingredient's description field or internal notes as a record of when the price was last verified. Some teams use a simple notation in the ingredient name — for example appending '(price: Feb 2026)' — to make staleness immediately visible in the ingredient list.
Managing Allergen Data: Accuracy Is Non-Negotiable
Allergen flags on custom ingredients have direct consequences for food safety and legal compliance. When you add a custom ingredient to a recipe, Formul.io aggregates all flagged allergens across every ingredient in that recipe and displays the complete allergen summary. This summary is only as accurate as the flags on each ingredient. Missing an allergen flag on a custom ingredient means the allergen will not appear in your recipe summary — and may not appear on your product label.
EU Regulation 1169/2011 on the provision of food information to consumers requires clear declaration of 14 major allergens whenever they are present in a food product, whether as a deliberate ingredient or as a processing aid. These 14 allergens must be flagged in your ingredient database with the same care you would apply to a food label. There is no distinction between a major ingredient and a trace: even lecithin from soy (a processing aid in some chocolates) must be declared if it derives from a listed allergen.
| Allergen | Common Confectionery Sources | Often Overlooked In |
|---|---|---|
| Gluten-containing cereals | Wheat flour, barley malt, some glucose syrups | Glucose syrup from wheat starch; malt extract flavorings |
| Crustaceans | Rarely in confectionery | Savory chocolate inclusions with shellfish extracts |
| Eggs | Whole egg, egg yolk, egg white, albumin | Meringue, marshmallow, some nougats, glazes |
| Fish | Rarely in confectionery | Umami/savory inclusions; some omega-3 enriched products |
| Peanuts | Peanut butter, peanut paste, peanut oil | Shared equipment cross-contamination; blended nut oils |
| Soybeans | Soy lecithin (in many chocolates), soy milk, tofu | Lecithin listed as 'emulsifier' without allergen declaration |
| Milk | Cream, butter, milk powder, lactose, whey, casein | Lactose in tablets; whey protein in some stabilizers; butter fat |
| Tree nuts | Hazelnut, almond, cashew, pistachio, walnut, pecan, Brazil nut, macadamia | Nut oils; almond flour; praline pastes; gianduja |
| Celery | Celery seed extract, celery salt | Savory spice blends used in caramel or chocolate |
| Mustard | Mustard seed, mustard powder, mustard flour | Spice blends; some savory chocolate products |
| Sesame | Tahini, sesame oil, sesame seeds | Halva inclusions; sesame-infused ganaches |
| Sulphur dioxide / sulphites (≥10 ppm) | Dried fruits (apricots, raisins), wine-based fillings | Dried fruit inclusions; alcohol-based ganache fillings |
| Lupin | Lupin flour, lupin protein | Gluten-free product substitutions; some confectionery coatings |
| Molluscs | Rarely in confectionery | Savory inclusions; artisan chocolate with unusual pairings |
The 14 major allergens under EU Regulation 1169/2011 — must be declared in ingredient lists and allergen summaries
Cross-Contamination Allergens: A Separate Decision
The 14 allergen flags in Formul.io represent allergens that are intentionally present as ingredients or processing aids. Cross-contamination allergens ('may contain traces of...') are a separate risk-management decision based on your facility's equipment, cleaning procedures, and production scheduling. The ingredient database allergen flags should reflect the ingredient's own composition — not facility-level cross-contamination risks. Document your cross-contamination risk assessment separately and incorporate the relevant 'may contain' statements into your product label independently of the database allergen summary.
Editing and Updating Existing Custom Ingredients
Custom ingredient entries are not static. Suppliers reformulate products, change fat sources, adjust stabilizer blends, or modify production processes in ways that alter composition. When a supplier changes the recipe for a product you use, you need to update your ingredient entry — and understand what that change means for every recipe that includes it.
The most common triggers for editing a custom ingredient are: a supplier price list update (requiring a cost per kilogram change), a reformulation that changes the composition (requiring updated fat, water, or sugar percentages), a change in allergen status (a supplier adds or removes an allergen through a reformulation or sourcing change), or a correction to data you entered incorrectly at creation. All of these are routine — maintaining ingredient accuracy is an ongoing responsibility, not a one-time task.
Composition Changes Affect All Dependent Recipes
When you update the fat or water percentage of a custom ingredient, every recipe in your account that includes that ingredient will have its Aw, shelf life, and cost recalculated using the new values on the next calculation. This is by design — it keeps your recipe predictions accurate. However, if you have produced and shelf-life-tested a recipe based on the old composition, the updated predictions may differ from your empirical results. Always re-verify Aw and shelf life predictions against lab measurement when a key ingredient's composition changes significantly.
Naming Conventions for Teams
In a team environment, ingredient naming discipline prevents a recurring problem: multiple custom entries for the same physical ingredient, each with slightly different composition data, cost, or allergen flags. When Alice adds 'Valrhona Guanaja 70%' and Bob later adds 'Guanaja 70 Valrhona', both will appear in search results and different team members' recipes will reference different entries — leading to divergent cost calculations and inconsistent allergen summaries.
Establish and document a naming convention for your kitchen before you build a significant ingredient library. Agree on a format and apply it consistently. The specific format matters less than the consistency: the goal is that any team member searching for an ingredient will find the same canonical entry, regardless of how they phrase the search.
Recommended Naming Convention
A practical convention for artisan confectionery kitchens:
Format: [Brand] [Product Name] [Key Specification]
Examples:
- Valrhona Guanaja 70% (not 'dark choc 70')
- Isigny Cream 35% (not 'cream Isigny')
- House Hazelnut Praliné 60% (for in-house blends, prefix with 'House')
- Ravifruit Passion Fruit Purée 10°Brix (include Brix for purées)
Rules:
- Always use % for concentrations
- Use °Brix for purées and syrups
- Prefix in-house blends with 'House'
- Use English as the primary name language, with local names as synonyms
- Never abbreviate the primary name
Best Practices: Custom Ingredient vs. Standard Equivalent
Adding a custom ingredient for every branded product you use is not always the right decision. The standard database exists to reduce that maintenance burden. Before creating a custom entry, evaluate whether the standard equivalent is accurate enough for your purpose.
| Use Custom Ingredient When... | Use Standard Equivalent When... |
|---|---|
| Composition differs materially from any standard entry (>3% difference in a key field) | Composition is within 2–3% of a standard entry for the fields that matter |
| You need exact allergen accuracy for labeling (e.g., specific lecithin source) | The allergen profile is identical to the standard entry |
| Price varies significantly from market average (for accurate costing) | You do not use recipe costing features or cost accuracy is not critical |
| The ingredient is used in many recipes and you need consistent identification | The ingredient is used rarely and only in one or two experimental recipes |
| The ingredient is an in-house blend with a unique composition | The ingredient is a commodity from any supplier (sucrose, unsalted butter, etc.) |
| You need to track this ingredient's price changes over time | Price tracking for this ingredient is not important to your workflow |
Decision guide: custom ingredient vs. using the closest standard equivalent
Audit Your Custom Ingredient Library Periodically
Over time, custom ingredient libraries accumulate duplicates, outdated entries, and ingredients no longer in use. Schedule a quarterly audit: check for duplicate names, verify that prices are current, confirm that composition data still matches supplier specifications, and remove ingredients not used in any active recipe. A clean, accurate library is more useful than a comprehensive but unreliable one.
Quick Reference: Custom Ingredient Checklist
- Search the default database first — add a custom entry only if no close equivalent exists
- Use the official product name as the primary name, following your team's naming convention
- Add synonyms: brand nickname, generic category, percentage, any internal codes, common misspellings
- Enter composition data from the supplier CoA or technical data sheet — not from general tables
- Verify that fat + water + carbohydrate + protein + fiber + ash ≈ 100%
- Enter water activity if you have a measured value; leave blank if estimating from composition
- Enter cost per kilogram as the actual landed cost including delivery allocation
- Flag every applicable EU allergen — cross-reference the product label and supplier allergen statement
- Save and test by adding to a recipe — verify that Aw, cost, and allergen summary are correct
- Record the date the entry was created and when composition and price were last verified
Frequently Asked Questions
Ingredient Substitution Science
How to replace fats, sugars, and dairy components without breaking your formula — matching water activity and emulsification.
How to Calculate Recipe Cost
A practical guide to accurate recipe costing: cost per gram, yield loss, food cost percentage, and break-even analysis.
Related Topics
Related Articles
How to Use Ingredient Substitution Suggestions in Formul.io
Learn how to use Formul.io's substitution feature to adapt recipes for allergen restrictions, ingredient unavailability, and cost optimization — with instant metric impact previews.
Exporting Professional PDF Data Sheets from Formul.io
Learn how to generate professional PDF data sheets from Formul.io for client sharing, production documentation, allergen declaration, and food safety certification preparation.
Organizing Production Batches and Customer Orders
A practical guide to planning confectionery production batches, tracking batch status, assigning lot numbers for traceability, linking batches to customer orders, and building multi-batch ingredient purchase lists.