Adapter les quantités d’une recette aux portions
Passer de 4 à 10 portions multiplie tout par 2,5 : 300 g de farine deviennent 750 g et 2 œufs deviennent 5. Indiquez les portions de la recette, celles qu'il vous faut et les ingrédients, et chaque quantité garde son unité. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Portions d'origine
- 4
- Portions souhaitées
- 10
- Facteur d'échelle
- 2,5
Ce calculateur de portions recalcule toutes les quantités lorsque le nombre de convives, de parts ou de fournées change. Indiquez le rendement initial, le rendement souhaité et une liste structurée d’ingrédients. L’outil applique le même coefficient proportionnel à chaque quantité, conserve les noms et les unités, puis renvoie les valeurs initiales et adaptées. Le calcul est déterministe, ne sollicite aucun réseau et refuse tout nombre de portions nul ou négatif avant d’effectuer une opération.
Redimensionnez une recette tout en gardant ses proportions
Une recette est un ensemble de proportions associé à un rendement prévu. Si une soupe conçue pour quatre personnes doit en nourrir dix, augmenter uniquement le bouillon ou les légumes transforme le plat au lieu de l’agrandir. Ce calculateur emploie un coefficient unique pour toute la liste : il divise le nombre de portions souhaité par le nombre initial.
Chaque quantité est ensuite multipliée par cette même valeur, afin que les rapports entre farine, eau, sel, huile, épices et autres ingrédients restent mathématiquement cohérents. Saisissez les quantités sous forme numérique et placez chaque unité dans le champ facultatif prévu. Le résultat reprend le nom, la quantité initiale, la quantité adaptée et l’unité, ce qui simplifie un affichage comparatif ou l’envoi vers un autre traitement.
Une quantité nulle est autorisée pour un ingrédient facultatif volontairement omis, tandis qu’une valeur négative est refusée. L’opération modifie uniquement les quantités : elle ne convertit pas les grammes en tasses, ne choisit pas les conditionnements et ne déduit aucune densité. Employez des unités cohérentes à l’entrée et interprétez la sortie dans ces mêmes unités.
Comprenez le coefficient et le résultat numérique
Le passage de quatre portions à dix donne 2.5, tandis que celui de huit à deux donne 0.25. Chaque quantité initiale est multipliée par ce coefficient. Ainsi, 300 grammes de farine prévus pour quatre portions deviennent 750 grammes pour dix, et deux œufs deviennent cinq.
Les résultats sont normalisés avec une précision numérique stable pour éviter les longues suites de décimales issues de la représentation binaire. Les deux nombres de portions doivent être finis et strictement positifs. Les quantités d’ingrédients doivent être finies et positives ou nulles.
Les limites de taille et de valeur préviennent les requêtes excessives accidentelles tout en acceptant les formules détaillées de restauration. Aucun arrondi automatique aux paquets, cuillères ou œufs entiers n’est appliqué : la décision pratique appartient à la personne qui exploite le résultat.
Exploitez les quantités adaptées en cuisine et dans vos logiciels
À domicile, indiquez le rendement publié et le nombre de convives attendu, puis copiez la liste recalculée dans vos achats ou votre plan de préparation. En restauration, la même réponse peut alimenter une fiche de production tout en conservant les unités de l’équipe. Conservez le nombre non arrondi jusqu’à la couche d’affichage si votre application possède des règles propres à chaque ingrédient.
Les liquides peuvent s’afficher avec une décimale, les épices avec une mesure plus fine et les articles indivisibles, comme les œufs, nécessitent une décision opérationnelle explicite. Ces choix dépassent la mise à l’échelle proportionnelle et ne doivent pas modifier silencieusement le calcul. Avant l’envoi, vérifiez que la liste contient un élément, que chaque nom est compréhensible, que les unités sont voulues et que les deux nombres de portions sont positifs.
Pour une recette réduite, tenez aussi compte du moule, du temps de cuisson et de la capacité du matériel.
Cas d’usage
Prévoir un dîner pour davantage de convives
Transformez une recette de quatre portions en quantités pour dix personnes sans rompre les proportions.
Créer une fiche de production pour un événement
Agrandissez une formule testée au rendement nécessaire en gardant noms et unités auprès de chaque résultat.
Ajouter un sélecteur de portions à une application
Recalculez des fiches d’ingrédients structurées dès qu’une personne choisit un nouveau rendement.
Questions fréquentes
Le calculateur convertit-il les unités ?
Non. Il conserve l’unité facultative associée à chaque ingrédient et ne modifie que la quantité numérique.
Les œufs et conditionnements sont-ils arrondis automatiquement ?
Non. La réponse garde la valeur proportionnelle ; vous pouvez ensuite appliquer la règle pratique adaptée à votre cuisine.
Comment le facteur d'échelle est-il obtenu ?
C'est le nombre de portions voulu divisé par le nombre de portions de la recette. Pour 10 personnes à partir d'une recette pour 4, le facteur vaut 2,5 et toutes les quantités sont multipliées par lui.
Puis-je réduire une recette ?
Oui. Passer de 8 portions à 2 donne un facteur de 0,25 : chaque quantité devient le quart de l'originale. La même règle fonctionne dans les deux sens.
Pourquoi tous les ingrédients changent-ils du même facteur ?
Parce qu'une recette est un ensemble de proportions. Augmenter seulement le bouillon ou seulement les légumes change le plat au lieu de l'agrandir ; farine, eau, sel et épices évoluent donc ensemble.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/life/recipe-scale-servings \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"original_servings":4,"target_servings":10,"ingredients":[{"name":"flour","quantity":300,"unit":"g"},{"name":"eggs","quantity":2,"unit":"count"}]}'const res = await fetch("https://api.kit.forhosting.com/life/recipe-scale-servings", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"original_servings": 4,
"target_servings": 10,
"ingredients": [
{
"name": "flour",
"quantity": 300,
"unit": "g"
},
{
"name": "eggs",
"quantity": 2,
"unit": "count"
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/recipe-scale-servings",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"original_servings": 4,
"target_servings": 10,
"ingredients": [
{
"name": "flour",
"quantity": 300,
"unit": "g"
},
{
"name": "eggs",
"quantity": 2,
"unit": "count"
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/recipe-scale-servings", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"original_servings":4,"target_servings":10,"ingredients":[{"name":"flour","quantity":300,"unit":"g"},{"name":"eggs","quantity":2,"unit":"count"}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"original_servings":4,"target_servings":10,"ingredients":[{"name":"flour","quantity":300,"unit":"g"},{"name":"eggs","quantity":2,"unit":"count"}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/recipe-scale-servings", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"original_servings": 4,
"target_servings": 10,
"ingredients": [
{
"name": "flour",
"quantity": 300,
"unit": "g"
},
{
"name": "eggs",
"quantity": 2,
"unit": "count"
}
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.recipe_scale_servings",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Comprenez le coefficient et le résultat numérique
Le coefficient correspond à target_servings divisé par original_servings. La réponse contient scale_factor afin que vous puissiez contrôler le calcul ou l’expliquer dans une interface. Un rendement initial nul ou négatif ne constitue pas une base valable, et une cible non positive ne décrit aucune préparation utilisable ; chaque cas renvoie invalid_input.
Exploitez les quantités adaptées en cuisine et dans vos logiciels
Une application de recettes peut appeler la fonction à chaque modification du sélecteur de portions, car l’algorithme renvoie le même JSON pour une entrée identique, sans dépendre d’un service externe, du hasard ni de l’heure. Une tâche API réussie coûte $0.002, tandis qu’une entrée incorrecte renvoie une erreur typée.
Questions techniques
Comment la quantité de chaque ingrédient est-elle adaptée ?
Le calculateur divise target_servings par original_servings, puis multiplie chaque quantité par le coefficient obtenu.
Que se passe-t-il si un nombre de portions est nul ou négatif ?
La requête renvoie invalid_input. original_servings et target_servings doivent être des nombres finis strictement positifs.
Combien coûte une requête API ?
Chaque tâche réussie coûte $0.002. L’outil web s’exécute localement et toute entrée incorrecte renvoie une erreur typée.