# Re-order rates logic

#1

Hey everyone!

This is less a coding/querying question and more a logic/mathematics question.

I cannot for the life of me understand why a "low" ratio = more reorders, and a "high" ration = more first purchases when reorder_rate = distinct order_ids / distinct delivered_to (i.e. reorder_rate = number of times an item was ordered / number of people it was delivered to).

I understand the code needed to obtain the correct answers; just don't understand the actual logic behind the calculation. It seems backwards to me; I'd expect "high" ratios to mean more reorders, and "low" ratios to mean less reorders.

Can someone please shed some light? This has been driving me mad for two days.

Thanks!

#2

This has been driving me also mad !!!

Page 11/12 says.....
A lower ratio means most of the orders are reorders.
A higher ratio means more of the orders are first purchases.

But in Page 12/12 says....
Wow! they have a very high reorder rate. That means these smoothie customers are strong repeat customers.
==============
I guess page 12 is correct... high order is repeat customers... more orders divided by less people hence the result is a high rate..........

Page 11 talks about higher RATIO... Page 12 talks about higher RATE ?? I hope RATIO and RATE are same.

Please someone help ???? Which is right ... I believe .. HIGH RATE.. repeated customers....
Please someone help ???? it us running me crazy !!!

#3

Hello, everebody. I have a good news for you. You are attentive ones.

This statement (SQL: Analyzing Business Metrics 11. Reorder Rates) is definitely wrong "We'll define reorder rate as the ratio of the total number of orders to the number of people making those orders. A lower ratio means most of the orders are reorders. A higher ratio means more of the orders are first purchases."

It has been turned inside out. A lower ratio means more of the orders are first purchases when you divide like this count(distinct order_id) / count(distinct orders.delivered_to).

When count(distinct order_id) = count(distinct orders.delivered_to) we have that one customer buy one item of this product. At this point we have the lowest reorder rate.

When we increase count(distinct order_id) then we increase the reorder rate.

#4

The whole SQL Analyzing Buisiness Metrics course looks full of mistakes like this and sometimes even bugs when you should pass wrong code to go forward. I think Codecademy should rebuild it from the ground. You still can learn something new, but sometimes it looks like a battle with mistakes and logic errors made by course creators!
The whole structure of the course is hard to comprehend.