Lactose-Free or Halal: AI Meal Plans That Follow Your Rules
TRAI treats your food rules as hard constraints: lactose-free keeps lactose-free dairy, a whey allergy removes all dairy, halal means no pork, alcohol or gelatin, profile allergies are never dropped. Example prompts, calorie and weekday settings, limits.

Get your free AI training and nutrition plan in 60 seconds
How do you get an AI meal plan that respects lactose-free, halal or other food rules?
State every rule in plain words, ideally in one message: "lactose-free, halal, no mushrooms, chicken only stewed, 1,900 kcal, 4 meals a day". In Trainera, TRAI treats what you said as hard constraints, passes them to the plan engine together with your calorie target, and builds the days from a library of more than 1,100 meals with images. It is told never to ask again for something you already said.
What does TRAI treat as a hard constraint?
Everything you said about food in the conversation: intolerances, allergies, religious rules, dislikes, how you eat a food and the meals you like.
Before it builds or changes a plan, TRAI goes through the whole conversation and collects those rules. Then the engine reads them as specific keys, not as loose wishes. A few examples of how the wording is read:
| You write | The engine reads |
|---|---|
| "Lactose-free" | Every dairy item is lactose-free or plant-based |
| "Allergic to whey" or "casein allergy" | No dairy at all (cow's milk protein) |
| "No milk, cheese is fine" | Milk itself is avoided, other dairy stays |
| "Halal" | No pork, no alcohol, no gelatin |
| "I don't eat fish" | No fish and no shellfish, unless you say shellfish is fine |
| "Celiac" | Gluten avoided, recorded as a medical condition |
| "Chicken only stewed" | How you eat a food, kept as an instruction in your words |
| "Soft food only, I have dentures" | Hard foods avoided by name: nuts, seeds, crackers, crusty bread, steak, raw carrot, apple and similar |
| "Lots of chicken" or "dairy is fine" | Not avoided: positive mentions never become a ban |
The same keys work whatever language you write in. "Bez laktoze", "senza lattosio" and "laktosefrei" all end up as the same lactose rule, because the engine translates every food rule into one internal list before it picks meals.
Lactose-free is not the same as dairy-free
Lactose intolerance and a milk allergy are different things, and a good meal plan treats them differently.
The US National Institute of Diabetes and Digestive and Kidney Diseases (NIDDK) describes lactose intolerance as digestive symptoms such as bloating and gas after foods or drinks that contain lactose, and states that it is different from a milk allergy, which is an immune system disorder. That is why "lactose-free" in Trainera keeps lactose-free milk, lactose-free yogurt and plant-based alternatives in the plan, while a whey or casein allergy removes dairy completely.
In practice this means you can keep foods you like. A client who only has trouble with lactose does not need to lose every yogurt-based breakfast, as long as the yogurt is lactose-free.
How allergies are handled
Allergies from your profile are always added to the build and never dropped, even if you forget to mention them in the chat.
- Profile first. For a client's plan, the engine adds the allergies, medical conditions, dietary preferences, goal and body stats stored in the profile.
- Your allergy counts even if others can eat it. "Peanuts are fine for my husband, I'm allergic" is still a peanut allergy.
- Named allergen keys. The engine has its own keys for common allergens such as milk, eggs, fish, shellfish, tree nuts, peanuts, wheat, soy, sesame, celery, mustard, sulphites and lupin.
For context, the US Food and Drug Administration names nine major food allergens under US law: milk, eggs, fish, crustacean shellfish, tree nuts, peanuts, wheat, soybeans and sesame.
One honest limit: a meal plan controls which foods are planned, not how they are produced or prepared. For a severe allergy, check labels and cross-contact yourself, and follow your doctor's or dietitian's advice. A meal plan is not medical advice.
Calories, meals per day and different weekdays
TRAI uses your calorie target exactly, and meals per day can differ by weekday.
| Setting | Range or options | Example wording |
|---|---|---|
| Daily calories | Your exact target | "1,900 kcal a day" |
| Meals per day | 1 to 6, can differ by weekday | "4 meals, but a free dinner on Saturday and 4 meals on Sunday" |
| Plan length | 1 to 30 days | "A 7-day plan" |
| Goal | Weight loss, muscle gain, maintenance, performance | "I want to lose fat slowly" |
| Cooking time | 15, 30, 45 or 60 minutes, or no preference | "Nothing over 30 minutes" |
| Cuisines and favorite meals | Free text, in your words | "Mediterranean, and I love oats for breakfast" |
If a target is unrealistic or unsafe, TRAI says so briefly and builds a safer version instead. The examples in its rules are "10 kg in a month" and "900 kcal a day". For the thinking behind a sensible deficit, see how to build a weight loss meal plan.
Example prompts that get the rules right
Put every rule into one message and the engine gets everything at once.
Example prompt (solo client):
"7-day meal plan, 1,900 kcal, 4 meals a day. Lactose-free, no mushrooms, chicken only stewed or grilled. I love oats for breakfast. Max 30 minutes cooking."
Example prompt (solo client, halal):
"Halal meal plan for muscle gain, 2,600 kcal, 5 meals. No fish. On Friday only 4 meals."
Example prompt (trainer, for a client):
"Nutrition plan for [client name], 14 days, use her profile. She is vegetarian and lactose-free, no protein shakes."
Example prompt (in Italian):
"Piano alimentare di 7 giorni senza lattosio, 1.800 kcal, 4 pasti al giorno."
TRAI replies in the language you write in, and plans can be written in 26 language codes. For more on vegetarian targets, read our high-protein vegetarian diet guide; for halal tracking in the Gulf, halal nutrition and macro tracking.
Common mistakes when stating food rules
Most misses come from rules that are vague, mixed up or only implied.
- "Dairy-free" when you mean lactose-free. You lose lactose-free yogurt and milk for no reason. Say which one is true for you.
- A dislike phrased as an allergy. "Allergic to mushrooms" and "I don't like mushrooms" both remove mushrooms, but only one belongs in a medical profile.
- Weekday exceptions left out. If Saturday dinner is a family meal, say so, or the plan fills it.
- No calorie number. Without one, the engine has to work out a target itself; give your number if you have one.
- Rules spread over a long chat. Collect them into one message, as below.
Say it once, but say it where TRAI can see it
TRAI does not ask again for rules you already gave, but each turn only sees the newest 40 messages of a chat.
In a short chat this never matters. In a long one, a rule you typed 60 messages ago is out of view. Two habits avoid that:
- Start a new chat for a new plan and put all rules in the first message.
- For trainers: store allergies, conditions and preferences in the client's profile, where they are always added.
Up to 5 chats are saved per user, and starting a sixth deletes the oldest chat, so a rules message is not a permanent record. The profile is.
What changes for trainers
A trainer's request is merged with the client's profile, and the plan stays in the trainer's library until the trainer assigns it.
When a trainer asks for a client's nutrition plan, the engine adds the client's experience level, goal, medical conditions, allergies, dietary preferences and body stats. The trainer's own meals are picked first, before the reference library. TRAI shows a confirm card with what it will create (title, number of days, client), and the plan is saved to the library. Assigning it is a separate step unless the trainer asks for "create it and assign it", and assigning replaces the client's active nutrition plan, so the card makes that clear.
Solo clients get a similar safety step: adding nutrition days saves directly, while saving a new nutrition plan that replaces the active one asks first.
Who can use it, and what it costs
TRAI is for trainers on paid plans and for solo clients on Client Pro or Premium; one message is one request.
| Plan | Price per month (US) | TRAI requests per month | AI food photo scan |
|---|---|---|---|
| Client Pro (solo) | $5.99 | 40 | No |
| Client Premium (solo) | $6.99 | 90 | Up to 20 a day |
| Trainer Starter | $19.99 | 20 | Not included for clients |
| Trainer Pro and up | From $49.99 | 50 to 200 | Clients up to 20 a day |
Prices differ by country; see trainera.fit/pricing. The food photo scan is a separate feature from the TRAI chat with its own limit. Clients who have a trainer and gym members do not get TRAI. The difference between the two client tiers is covered in Client Pro vs Premium.
What TRAI does not do: it does not check whether a product in your shop is certified halal or lactose-free, it has no voice input, and it can make mistakes. The chat footer says "AI can make mistakes. Double-check important results." Read the plan and the labels before you shop. If you would rather fill in a form than chat, the AI meal plan generator covers the Generate-button route.
A food-rules checklist to paste before your next plan
Copy this, fill it in, and send it as the first message of a new chat:
"Goal: [lose / gain / maintain]. Calories: [number] kcal. Meals: [number] a day, [weekday exceptions]. Intolerances: [lactose / none]. Allergies: [list / none]. Rules: [halal / vegetarian / none]. I don't eat: [foods]. I eat [food] only [how]. I like: [meals, cuisines]. Cooking time: [minutes]. Days: [number]."
If you also want training in the same chat, the same plain-words approach works for day kinds and session order and for the equipment you have.
See Trainera's AI tools for meal plans, workouts and food scans on the AI fitness coach page.
Frequently Asked Questions
Can an AI make a lactose-free meal plan?
Can an AI meal plan be halal?
Will the AI forget my food allergies?
Can I have different meals on weekends in an AI meal plan?
Is an AI meal plan safe with a severe food allergy?
Keep Reading
Put this into practice with Trainera
Get your free AI training and nutrition plan in 60 seconds
1800+ exercises, wearables and progress tracking, free with no card needed. AI food scanning comes with Premium. Train solo or with a certified coach.