Comparez les prix unitaires et trouvez la meilleure offre
Un paquet de 12 articles à 4,50 revient à 0,375 l'article, un paquet de 20 à 6,40 revient à 0,32 : le grand est donc le plus avantageux. Saisissez le prix et la taille de deux produits et voyez les deux prix unitaires et le gagnant. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Prix du produit A
- 4,5
- Taille du produit A
- 12
- Prix du produit B
- 6,4
- Taille du produit B
- 20
- Meilleure affaire
- product_b
- Écart par unité
- 0,055
Ce calculateur transforme le prix et la contenance de deux produits en une comparaison équitable. Indiquez le prix total et la taille du produit A puis du produit B, dans la même unité. L’outil divise chaque prix par sa taille, affiche les deux coûts unitaires et désigne l’option la moins chère ou une égalité. Il convient aux courses, aux fournitures ménagères, aux achats de bureau et à toute comparaison de conditionnements différents. Une taille nulle ou négative est refusée, car elle ne permet pas de calculer un prix unitaire valable.
Pourquoi le prix unitaire rend la comparaison équitable
Le prix affiché ne suffit pas à déterminer quel conditionnement est le plus avantageux lorsque les quantités diffèrent. Une petite boîte peut sembler moins chère à la caisse tout en coûtant nettement plus par once, gramme, millilitre, feuille, gélule ou article. Le prix unitaire supprime cette confusion en ramenant les deux produits à une base commune.
Il suffit de diviser le prix du paquet par sa taille. Par exemple, un lot de 12 articles vendu 4.50 revient à 0.375 par article, tandis qu’un lot de 20 articles vendu 6.40 revient à 0.32 par article. Bien que le second coûte davantage au total, son coût par article est inférieur : il représente donc la meilleure offre dans ce calcul.
Le résultat porte uniquement sur le rapport entre quantité et prix. Il ne détermine pas si vous avez besoin du grand format, si son contenu risque de périmer ni si sa qualité diffère. Ces considérations restent importantes, mais le prix unitaire vous fournit le fait numérique indispensable pour juger le coût sans vous laisser distraire par l’emballage ou une promotion.
Comment saisir correctement les prix et les contenances
Saisissez le prix complet de chaque paquet sous forme de nombre simple, puis sa quantité totale. Les deux tailles doivent employer la même unité. Vous pouvez comparer deux boîtes de céréales en onces, deux bidons de lessive en millilitres ou deux lots en nombre d’articles.
Ne comparez pas directement des onces à des grammes ni des litres à des millilitres : convertissez d’abord une quantité pour obtenir le même dénominateur. Un prix peut être nul, notamment pour un véritable échantillon gratuit, mais jamais négatif. La taille doit être strictement positive.
Une division par zéro est indéfinie et une taille négative ne décrit aucun paquet réel ; ces cas produisent donc une erreur de saisie au lieu d’un résultat trompeur. La réponse conserve le prix et la taille des produits A et B, puis ajoute leur prix unitaire.
Comment interpréter la meilleure offre en pratique
Le produit désigné comme la meilleure offre présente le coût le plus bas pour une unité commune. Ce résultat mathématique est précis, mais une décision d’achat dépend souvent d’autres contraintes. Un grand format peut avoir le meilleur prix unitaire et néanmoins faire perdre de l’argent si une partie se périme, occupe un espace indisponible ou dépasse votre budget immédiat.
Un petit format peut être raisonnable pour essayer un produit, voyager ou éviter le gaspillage. Les taxes, bons, cotisations, frais de livraison, remises de fidélité, consignes et écarts de qualité ne sont pas ajoutés automatiquement ; utilisez le prix final prévu si ces éléments appartiennent à votre comparaison. L’écart unitaire permet d’en mesurer l’importance.
Une différence minime ne compense pas toujours la commodité, tandis qu’un écart répété sur des centaines d’unités peut peser sur un budget. Le calcul est déterministe et ne consulte ni réseau, ni tarif actuel, ni valeur aléatoire, ni horloge. Des entrées identiques donnent donc des résultats identiques.
Pour garder une décision vérifiable, notez les prix sources, contrôlez les unités et conservez le résultat.
Cas d’usage
Comparer les formats au supermarché
Vérifiez si un bocal, une boîte ou un lot plus grand coûte réellement moins par once, gramme ou article.
Évaluer les offres pour la maison
Comparez lessive, papier, piles et recharges lorsque les quantités et les prix affichés diffèrent.
Éclairer les décisions d’achat
Ramenez deux conditionnements fournisseurs à une base unitaire commune avant de choisir une ligne de commande.
Questions fréquentes
Comment calcule-t-on le prix unitaire ?
Chaque prix est divisé par la taille du paquet correspondant. L’option qui obtient le résultat le plus bas est la meilleure offre.
Les deux tailles doivent-elles employer la même unité ?
Oui. Convertissez-les dans une unité commune, par exemple en grammes, onces, millilitres ou articles, avant la comparaison.
Le prix d'un produit peut-il être nul ?
Oui. Un prix nul est accepté, par exemple pour un échantillon réellement offert, mais pas un prix négatif. Les tailles, elles, doivent être supérieures à zéro, car une taille nulle obligerait à diviser par zéro.
Que montre l'écart par unité ?
C'est la différence entre les deux prix unitaires, 0,055 par article dans l'exemple. Multipliez-la par la quantité que vous comptez acheter ou utiliser pour mesurer le poids réel du choix.
Le prix unitaire le plus bas est-il toujours le meilleur achat ?
Seulement côté prix. La comparaison ignore si vous avez besoin du grand format, s'il périmera avant d'être fini ou si la qualité diffère. Pesez ces points vous-même une fois les chiffres clairs.
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/math/unit-price-compare \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"product_a_price":4.5,"product_a_size":12,"product_b_price":6.4,"product_b_size":20}'const res = await fetch("https://api.kit.forhosting.com/math/unit-price-compare", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"product_a_price": 4.5,
"product_a_size": 12,
"product_b_price": 6.4,
"product_b_size": 20
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/unit-price-compare",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"product_a_price": 4.5,
"product_a_size": 12,
"product_b_price": 6.4,
"product_b_size": 20
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/unit-price-compare", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"product_a_price":4.5,"product_a_size":12,"product_b_price":6.4,"product_b_size":20}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"product_a_price":4.5,"product_a_size":12,"product_b_price":6.4,"product_b_size":20}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/unit-price-compare", 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
{
"product_a_price": 4.5,
"product_a_size": 12,
"product_b_price": 6.4,
"product_b_size": 20
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.unit_price_compare",
"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
Comment saisir correctement les prix et les contenances
Le champ better_value indique product_a, product_b ou tie, tandis que difference_per_unit donne l’écart absolu afin que vous puissiez mesurer l’importance de l’économie selon la quantité achetée.
Comment interpréter la meilleure offre en pratique
Une requête API coûte $0.002, alors que le navigateur effectue localement le même calcul.
Questions techniques
Que se passe-t-il si une taille est nulle ou négative ?
La requête renvoie invalid_input, car une quantité doit être positive pour définir un prix unitaire valable.
Que se passe-t-il si les prix unitaires sont égaux ?
Le champ better_value indique tie et l’écart par unité vaut zéro.
Combien coûte la comparaison ?
Le calcul dans le navigateur est gratuit. Une requête API réussie coûte $0.002.