Aller au contenu

Prix moyen vs Prix médian – comment éviter le piège ?

Effectuer une analyse de rentabilité basée sur le prix moyen est rapide et facile – mais cela donne-t-il une image complète ? Je vous explique pourquoi et comment comparer le prix moyen avec le prix médian, et prendre des décisions de tarification judicieuses.

En tant que professionnel de la tarification, je suis sûr que vous avez effectué des examens réguliers de rentabilité basés sur les prix moyens. En fin de compte, le calcul est très simple – le total des ventes divisé par la quantité totale vous donne le prix de vente moyen, puis vous le comparez au coût standard, et vous avez votre rentabilité.

Cependant, prendre une décision d’augmentation de prix basée uniquement sur la rentabilité calculée sur le prix de vente moyen peut entraîner des erreurs.

Le prix moyen peut être fortement influencé par des extrêmes – la majorité des clients peuvent acheter le produit au bon prix, mais un « client spécial » peut l’acheter en grande quantité à bas prix. Ou il pourrait y avoir eu un « projet spécial » où l’équipe de vente a accordé une remise généreuse sur une transaction unique. Ceux-ci sont appelés l’impact du « mix clientèle », ou l’impact du « mix projet ».

(Note : Si vous souhaitez en savoir plus sur la différence entre la moyenne et la médiane d’un point de vue statistique, veuillez vous référer à cet article de l’Université d’État du Michigan.)

Comment pouvons-nous analyser la différence et découvrir ce qui la provoque ? Dans l’exemple ci-dessous, nous utiliserons les ensembles de données échantillons que nous avions publiés précédemment et exécuterons quelques requêtes SQL sur les données de facturation pour découvrir ce qui influence le prix de vente moyen d’un seul SKU.

Commençons par voir le prix moyen de nos SKUs. Nous pouvons exécuter l’analyse ci-dessous pour voir le prix moyen par SKU :

SELECT 
	SKU_Nbr,
	ROUND(Revenue,0) AS Revenue,
	Quantity,
	ROUND(Revenue / Quantity,2) AS ASP
FROM
	(
	SELECT 
		SKU_Nbr,
		SUM(CY_Revenue) AS Revenue,
		SUM(CY_Quantity) AS Quantity
	FROM [PriBlo].[dbo].[Summary_Table]
	GROUP BY SKU_Nbr
	) T
ORDER BY SKU_Nbr

Le résultat de la query ci-dessus exécutée sur notre ensemble de données serait le suivant :

SKU_NbrRevenueQuantityASP
BIC-F1,123,1952,713414.00
BIC-S4,070,11417,287235.44
BRA-011,097,671114,6369.58
BRA-021,182,77243,59927.13
DRV-011,322,25716,51980.04
DRV-02714,8815,748124.37
GEA-01-S947,39128,50733.23
GEA-02-F2,159,73192,44323.36
GEA-03-F628,29327,44122.90

Choisissons DRV-01 pour une analyse plus approfondie. Le prix de vente moyen semble être de 80,04 €. Maintenant, imaginez que ce SKU présente un problème de rentabilité (c’est-à-dire que les marges brutes sont inférieures à ce qui est souhaité), et que vous souhaitez comprendre si la réponse à cela est une augmentation de prix. Creusons plus profondément dans la distribution du prix de vente net de DRV-01 par clients.

SELECT
	Customer_No,
	ROUND(Revenue,0) AS Revenue,
	Quantity,
	ROUND(Revenue / Quantity,2) AS ASP
FROM
	(
	SELECT 
		Customer_No,
		SUM(CY_Revenue) AS Revenue,
		SUM(CY_Quantity) AS Quantity
	FROM [PriBlo].[dbo].[Summary_Table]
	WHERE
		SKU_Nbr = 'DRV-01' AND CY_Quantity > 0 -- exclude returns to avoid div/0 
	GROUP BY
		Customer_No
	) T
ORDER BY ASP

En regardant la très longue table de résultats de la requête ci-dessus, nous notons que 835 clients ont acheté ce produit, et ils ont payé entre 12,93 € et 276,88 € pour ce produit. Quelle grande fourchette ! Je vous suggère de toujours prendre les extrémités avec précaution, il y a toujours une histoire comptable technique derrière.

La table de résultats est trop longue pour être lue, il est donc difficile d’en tirer des actions. Avec la requête ci-dessous, nous regrouperons les ASP dans des tranches de 10 €, en ajoutant les revenus par tranche. Cela devrait nous aider à mieux comprendre ce qui influence l’ASP.

SELECT
	*
FROM
	(
	SELECT
		Order_Rank,
		ASP_Group,
		SUM(Revenue) AS Revenue
	FROM
		(
		SELECT
			Customer_No,
			ROUND(Revenue,0) AS Revenue,
			Quantity,
			ROUND(Revenue / Quantity,2) AS ASP,
			FLOOR((Revenue / Quantity) / 10) AS Order_Rank,
			CONCAT( FLOOR((Revenue / Quantity) / 10) * 10 , ' € - ' , (FLOOR((Revenue / Quantity) / 10) + 1)  * 10 , ' €')  AS ASP_Group
		FROM
			(
			SELECT 
				Customer_No,
				SUM(CY_Revenue) AS Revenue,
				SUM(CY_Quantity) AS Quantity
			FROM [PriBlo].[dbo].[Summary_Table]
			WHERE
				SKU_Nbr = 'DRV-01' AND CY_Quantity > 0 -- exclude returns to avoid div/0 error
			GROUP BY
				Customer_No
			) T
		) X
	GROUP BY Order_Rank, ASP_Group
	) Y
ORDER BY Order_Rank

Le résultat de la query ci-dessus est le tableau ci-dessous :

Order_RankASP_GroupRevenue
110 € – 20 €260
330 € – 40 €55,312
550 € – 60 €26,765
660 € – 70 €261,737
770 € – 80 €83,023
880 € – 90 €406,977
990 € – 100 €334,202
10100 € – 110 €123,869
11110 € – 120 €27,523
12120 € – 130 €2,383
13130 € – 140 €265
14140 € – 150 €148
27270 € – 280 €277

Nous pouvons mieux observer cela dans un graphique à colonnes, pour visualiser les différences (en utilisant Excel).

En analysant visuellement, nous nous attendons à avoir un prix médian quelque part entre 90 et 100 EUR (ne faites pas toujours confiance à l’analyse visuelle, vous pouvez également calculer la médiane sur SQL ou sur Excel si vous voulez être sûr). Par conséquent, nous pouvons soupçonner que des exceptions font baisser le prix de vente moyen en dessous du prix de vente médian.

Ici, nous pourrions voir 2 tranches faisant baisser l’ASP :

  • Un revenu élevé enregistré entre 60 et 70 EUR,
  • Un petit mais significatif revenu enregistré entre 30 et 40 EUR.

Maintenant, nous devons approfondir pour comprendre qui sont ces clients et quelles sont ces factures. Comme c’est plus extrême, je vais seulement creuser jusqu’à 30-40 EUR maintenant, afin d’avoir les éléments en main pour pouvoir en discuter avec l’équipe de vente.

SELECT [Invoice_Date]
      ,[Invoice_No]
      ,[SKU_Nbr]
      ,[Customer_No]
      ,[Quantity]
      ,[Revenue]
      ,[Invoice_Year]
	  , ROUND(Revenue / Quantity,2) AS ASP
  FROM [PriBlo].[dbo].[Invoice_Lines_processed]
  WHERE SKU_Nbr = 'DRV-01' AND Revenue / Quantity > 30 AND Revenue / Quantity < 40

Le résultat de la query est le suivant :

Invoice DateInvoice NoSKU NbrCustomer NoQuantityRevenueASP
05/10/202194604DRV-01156227782117,74536.71
15/11/202197464DRV-011562277825510,07139.49
06/02/202045464DRV-01156227781203,64730.39
03/03/202047893DRV-01156227781154,34437.78
28/04/202051696DRV-0115622778451,36830.39
01/03/202178368DRV-0115622778893,41338.34
28/06/202187920DRV-0115622778982,97830.39
22/06/202187503DRV-0115622778-12-36530.39
19/07/202189357DRV-01156227781063,50533.06

Voilà ! Maintenant, nous avons de quoi réfléchir. C’est toujours le client 15622778 qui obtient un prix très bas de manière cohérente (à la fois en 2020 et en 2021). Si ce client payait comme un client moyen, le prix de vente moyen de ce produit serait de 83,81 EUR – soit 4,7 % de plus qu’actuellement.

Au lieu d’appliquer une augmentation de prix de 4,7 % sur ce produit, vous pourriez simplement corriger ce prix très bas du client 15622778, et peut-être que ce produit sortira de la liste de surveillance de la rentabilité.

J’espère que cela vous aidera. Nous avons parcouru beaucoup de données, d’analyses et de résultats. Quels autres points voyez-vous dans ces données à analyser plus en détail ? Qu’est-ce qui pourrait vous aider à « corriger » davantage le prix transactionnel de DRV-01 ?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *