Solved

# Help writing a formula to match this chart

Posted on 2010-09-03
364 Views
Before I start, yes I do wish I'd paid more attention in math's class...!  ;-)

I need to create a formula to sell a product based on the number of people using it.

So, if only 10 people in a company use it, then the company pays a maximum of, say, \$10 per user.  However, at 5000 users they should pay a lot less per-user, say, \$1 per user.  The maximum should be \$10 per user and the minimum should be \$1 per user (for 10 users and 5000 users respectively).  If a company has 10,000 users they should still pay \$1 per user.

I have included a chart to hopefully simplify this:

Can anyone help devise a formula that would give me a price per user based on the number of users entered?
0
Question by:Rouchie
• 9
• 8

LVL 12

Assisted Solution

FDiskWizard earned 55 total points
ID: 33598953
Do you want it on a curve like that, so that for instance 700 users would be around 3\$?
Or would it be better to have 11-500, 501-1000, etc...
0

LVL 51

Assisted Solution

HainKurt earned 445 total points
ID: 33598961
something like this

y = 5000 / x
0

LVL 51

Assisted Solution

HainKurt earned 445 total points
ID: 33598991
better one

y = 1 + 2 * ln (5000/x)
0

LVL 51

Expert Comment

ID: 33599032
result of above forlmula
``````10	13.4292162
20	12.04292184
30	11.23199162
40	10.65662747
50	10.21034037
60	9.845697258
70	9.537395899
80	9.270333113
90	9.034767042
100	8.824046011
200	7.43775165
300	6.626821434
400	6.051457289
500	5.605170186
600	5.240527072
700	4.932225713
800	4.665162927
900	4.429596856
1000	4.218875825
2000	2.832581464
3000	2.021651248
4000	1.446287103
5000	1
``````
0

LVL 51

Assisted Solution

HainKurt earned 445 total points
ID: 33599059
if you use

y = 1 + 1.448 * ln (5000/x)

looks liek your graph ;)
``````10	10.00
20	9.00
30	8.41
40	7.99
50	7.67
60	7.40
70	7.18
80	6.99
90	6.82
100	6.66
200	5.66
300	5.07
400	4.66
500	4.33
600	4.07
700	3.85
800	3.65
900	3.48
1000	3.33
2000	2.33
3000	1.74
4000	1.32
5000	1.00
``````
0

LVL 51

Accepted Solution

HainKurt earned 445 total points
ID: 33599105
we can revise the formula like

y = 1 + 1.448 * ln (5000/if(x>5000, 5000, x))

to fix it to 1 after 5000 ;)
0

LVL 25

Author Comment

ID: 33602315
Wow!  Thank you very much for sharing your wisdom, and so quickly.  I think HainKurt you've pretty much mastered exactly what I needed!
>> Do you want it on a curve like that, so that for instance 700 users would be around 3\$?Or would it be better to have 11-500, 501-1000, etc...

If you could provide this for me as well that would be really useful.  At least then I could plot both into Excel and compare the results for different numbers of users.

Thanks again!
0

LVL 25

Author Comment

ID: 33602532
Hang on there's a problem (I think!).

When I plot this into Excel, at a certain point the cost per user plummets (see code).  Is there a way to prevent this happening?
``````Users	Price Per User	Total
5	Â£10.08		Â£50.41
10	Â£10.07		Â£100.73
15	Â£10.06		Â£150.95
50	Â£10.00		Â£500.00
100	Â£9.91		Â£990.91
150	Â£9.82		Â£1,472.73
250	Â£9.64		Â£2,409.09
350	Â£9.45		Â£3,309.09
500	Â£9.18		Â£4,590.91
750	Â£8.73		Â£6,545.45
1000	Â£8.27		Â£8,272.73
4000	Â£2.82		Â£11,272.73
5000	Â£1.00		Â£5,000.00
``````
0

LVL 25

Author Comment

ID: 33602535
Sorry should have clarified - at 5000 users the price is rather attractive!
0

LVL 51

Assisted Solution

HainKurt earned 445 total points
ID: 33605280
i dont see where the problem is, if you look at your graph, it never drops 10\$ per user...
if you want to share 5000 to users you can use xy=5000 formula ;)

or

y = if(x<10, 500, if(x<5000, 5000/x, 1))

ie

y = 500  if x<10
y = 5000/x if x between 10 & 5000
y = 1 if x>5000
0

LVL 25

Author Comment

ID: 33606871
When I plot this into Excel it gives me the following.  Have I done something wrong because all the totals are the same?
``````Users	Price Per User	Total
10 	Â£500.00		Â£5,000.00
15 	Â£333.33		Â£5,000.00
50 	Â£100.00		Â£5,000.00
100 	Â£50.00		Â£5,000.00
150 	Â£33.33		Â£5,000.00
250 	Â£20.00		Â£5,000.00
350 	Â£14.29		Â£5,000.00
500 	Â£10.00		Â£5,000.00
750 	Â£6.67		Â£5,000.00
1,000 	Â£5.00		Â£5,000.00
4,000 	Â£1.25		Â£5,000.00
5,000 	Â£1.00		Â£5,000.00
``````
0

LVL 51

Assisted Solution

HainKurt earned 445 total points
ID: 33607431
if you use xy=5000 of course all the sums will be 5000 ;) we discussed 3 formulas so far...

1.
y = 1 + 1.448 * ln (5000/x)

2.
y = 500  if x<10
y = 5000/x if x between 10 & 5000
y = 1 if x>5000

3.
xy=5000 or y=5000/x
0

LVL 25

Author Comment

ID: 33611320
After plotting your different proposals into Excel, I don't think a curved reduction on the cost-per-user is going to work for us.  Its important that the overall total always increases with the number of users, and that the cost-per-user decreases with the number of users also.

Can your proposals be tweaked to give a flat reduction instead of curved (e.g. the cost per user decreases directly in proportion to the number of users)?

Thanks for your help so far btw.
0

LVL 51

Assisted Solution

HainKurt earned 445 total points
ID: 33614413

y=25/POWER(LN(x),1.3)

you can play with contstants in this formula...
``````10	8.45	84.54
20	6.00	120.09
30	5.09	152.74
40	4.58	183.25
50	4.24	212.22
60	4.00	240.02
70	3.81	266.89
80	3.66	292.99
90	3.54	318.44
100	3.43	343.34
200	2.86	572.26
300	2.60	779.92
400	2.44	975.45
500	2.33	1162.71
600	2.24	1343.78
700	2.17	1519.96
800	2.12	1692.12
900	2.07	1860.90
1000	2.03	2026.76
2000	1.79	3579.69
3000	1.67	5018.74
4000	1.60	6391.51
5000	1.54	7718.35
10000	1.39	13943.82
20000	1.27	25377.30
30000	1.20	36131.20
40000	1.16	46481.66
50000	1.13	56549.16
60000	1.11	66400.75
70000	1.09	76078.92
80000	1.07	85612.82
90000	1.06	95023.64
100000	1.04	104327.45
``````
0

LVL 51

Assisted Solution

HainKurt earned 445 total points
ID: 33614429
flat?

y2-y1/x2-x1 = m
10-1 / 5000-0 = m
1/500 ~ m

so y = x/500

can you please give a better sample with values... create an excel table, with x/y values and put the numbers... if you wish add agraph too... so I can try a better formula...
0

LVL 25

Author Comment

ID: 33615598
Okay no problem - please give me some time to gather people's opinions and I'll get a spreadsheet uploaded...

Thanks again.
0

LVL 25

Author Comment

ID: 33647588
Hi HainKurt

The problem at the moment is that we don't actually know exactly what price we want each user figure to be.  We have decided on the upper and lower price boundaries, and just want to see what the intermediary values are using whatever proposal is chosen from here.

The reason for my original post was to get a rough formula that we could then graph, and tweak as needed to give the best outcome.  Unfortunately I think your skills have made me need to revise my plans once I saw the results.

So...

We need to start off at 10 users @ \$10 per user
The price must then fall until we get to 10,000 users @ \$1 per user
Beyond those user total limits I can quite easily stop Excel altering the price.

What would be perfect is if the formula could have two variables that could be adjusted:

- Variable 1 to affect the decrease in price as the user numbers increase from 10 upwards
- Variable 2 to affect the decrease in price when approaching the 10,000 user figure

The two variables would therefore create a 'price curve' where either side could be altered until we were happy with the prices calculated.

Does that sound plausible?
0

LVL 25

Author Closing Comment

ID: 33689961
Thanks very much.  I need some time to play with all this information now... :-)
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

### Suggested Solutions

Title # Comments Views Activity
What C#.NET support is there for a rules engine? 4 47
new car buying (price bargaining) ideas.. 5 99
Percentage calculation 4 62
finding artist from picture(portrait) 5 123
Introduction On a scale of 1 to 10, how would you rate our Product? Many of us have answered that question time and time again. But only a few of us have had the pleasure of receiving a stack of the filled out surveys and being asked to do somethiâ€¦
This article provides a brief introduction to tissue engineering, the process by which organs can be grown artificially. It covers the problems with organ transplants, the tissue engineering process, and the current successes and problems of the tecâ€¦
This is a video describing the growing solar energy use in Utah. This is a topic that greatly interests me and so I decided to produce a video about it.
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templaâ€¦

#### 829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.