• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 22:07
CEST 04:07
KST 11:07
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Code S Season 1 (2026) - RO4 & Finals Preview5[ASL21] Ro4 Preview: On Course12Code S Season 1 - RO8 Preview7[ASL21] Ro8 Preview Pt2: Progenitors8Code S Season 1 - RO12 Group A: Rogue, Percival, Solar, Zoun13
Community News
Weekly Cups (May 11-17): Classic wins double0Code S Season 1 (2026) - RO8 Results2Weekly Cups (May 4-10): Clem, MaxPax, herO win1Maestros of The Game 2 announcement and schedule !16Weekly Cups (April 27-May 4): Clem takes triple0
StarCraft 2
General
Weekly Cups (May 11-17): Classic wins double Code S Season 1 (2026) - RO4 & Finals Preview Team Liquid Map Contest #22 - The Finalists Code S Season 1 (2026) - RO8 Results Code S Season 1 (2026) - RO12 Results
Tourneys
$1,400 SEL Season 3 Ladder Invitational GSL Code S Season 2 (2026) GSL Code S Season 1 (2026) $5,000 WardiTV Spring Championship 2026 Maestros of The Game 2 announcement and schedule !
Strategy
Custom Maps
[D]RTS in all its shapes and glory <3 [A] Nemrods 1/4 players
External Content
The PondCast: SC2 News & Results Mutation # 526 Rubber and Glue Mutation # 525 Wheel of Misfortune Mutation # 524 Death and Taxes
Brood War
General
vespene.gg — BW replays in browser Lights Ro.8 Review (asl s21) BGH Auto Balance -> http://bghmmr.eu/ 25 Years Since Brood War Patch 1.08 ASL21 General Discussion
Tourneys
[ASL21] Semifinals B [BSL22] RO8 Bracket Stage + Another TieBreaker [ASL21] Ro8 Day 4 Escore Tournament StarCraft Season 2
Strategy
Muta micro map competition Fighting Spirit mining rates [G] Hydra ZvZ: An Introduction Simple Questions, Simple Answers
Other Games
General Games
Stormgate/Frost Giant Megathread Warcraft III: The Frozen Throne ZeroSpace Megathread War of Dots, 2026 minimalst RTS Nintendo Switch Thread
Dota 2
The Story of Wings Gaming
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas TL Mafia Community Thread Five o'clock TL Mafia
Community
General
US Politics Mega-thread European Politico-economics QA Mega-thread YouTube Thread Russo-Ukrainian War Thread UK Politics Mega-thread
Fan Clubs
The herO Fan Club!
Media & Entertainment
[Manga] One Piece Anime Discussion Thread [Req][Books] Good Fantasy/SciFi books
Sports
2024 - 2026 Football Thread McBoner: A hockey love story Formula 1 Discussion
World Cup 2022
Tech Support
streaming software Strange computer issues (software) [G] How to Block Livestream Ads
TL Community
The Automated Ban List
Blogs
Why RTS gamers make better f…
gosubay
How EEG Data Can Predict Gam…
TrAiDoS
ramps on octagon
StaticNine
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1563 users

Cost Theory and No. of Workers in a Game

Forum Index > BW General
Post a Reply
1 2 3 Next All
DongTanks
Profile Joined January 2010
Singapore15 Posts
Last Edited: 2010-01-07 11:55:40
January 07 2010 08:28 GMT
#1
Hi! This is PART of the research I have done on ideal mining in Starcraft (sorry for not being able to post all my findings but yeah man... that means I'll be wiser ;D), and also this can be treated as a follow up on IMPERVIOUS' thread on Ideal Mining, so do check that out too.

Although this is only a part of my research, I bet this is all you need to know to play. 24 workers every mineral line with 8/9 patches is a pretty well-known number, no?

Now, I'll just show you some of the data that i have collected. Note that there are erroneous data under 'average minerals gathered/worker/minute', which could be due to human reaction time as my research team was using a stopwatch. Although it does not affect the final argument, DO NOT take these readings as standard.

Taking the ceteris paribus assumption...

Number of Workers | Average Mineral Gathered/Worker/Minute | Average Mineral Spent/Worker
4............................................78.5.................................................175
8 ...........................................60.0.................................................112
12..........................................55.0.................................................100
16..........................................49.5..................................................87.5
20..........................................44.8..................................................80.0
24..........................................44.7..................................................79.2
32 .........................................38.0..................................................75.0
36..........................................33.6 .................................................72.2
40..........................................38.0..................................................70.0
44..........................................33.6..................................................70.5
48..........................................30.1..................................................68.8

Note: Average Mineral Spent / Worker = (400 + No. of Supply depots*100 + No. of Workers*50) / No. of Workers, where 400 = cost of a command centre / nexus and not including hatchery.

We will then derive the average cost of a worker, which equals (average minerals spent/worker) - (Average Minerals Gathered/Worker/Minute)

No. of Workers | Average Cost of a Worker
4....................................96.5
8....................................52..0
12...................................45.0
16...................................38.0
20...................................35.2
24...................................34.5
28...................................36.4
32...................................37.0
36...................................38.6
40...................................32.0
44...................................36.9
48...................................38.7

Plotting the points on the graph, you will roughly get a U shape curve. Because some data are erroneous as mentioned earlier, you will not get a smooth curve, which is not suppose to be so. BUT the trend of the readings can be seen going in a U shape curve, with those points that are plotted way off being the erroneous points. But anyway, that curve is the short-run average cost curve (SRAC). It shows the cost efficiency of each worker against the number of workers in a SINGLE base (considering early game where you only have one command centre). The minimum point of the U shape curve is where the cost of the worker is at the lowest, and it is at its lowest when the number of workers in a SINGLE base is 24.

[image loading]

[Picture in courtesy of The Open University, GREAT HELP there...]

Another reason why it's 24 without using the Theory of Economics is.... the mineral line will simply reach saturation.

Ok... so when it reaches mid-game, a player will most likely take multiple expansions (duh). We will now examine the long run average cost curve (LRAC), taking the ceteris paribus assumption again, and the assumption that all mining bases are at maximum efficiency (24 workers each).

No. of Workers | Average Cost of a Worker
48.................................34.5...................
48.................................32.3...................
72.................................33.1...................
96.................................32.0...................
160...............................31.7...................
(You cannot go beyond 160 workers, man.....)

[Note: Average COst of a Worker = (No. of Command Centre * 400 + No. of Supply Depots * 100 + No. of Workers * 50)/No. of Workers]

[image loading]

Picture in courtesy of The Open University... BIG HELP again... :D

[Note that the LRAC is made up of infinitely many SRAC at its most efficient/minimum point)

Ignoring the erroneous data, when these points are plotted you will get a 1/x curve. This curve will have a very large minimum efficient scale (minimum point, which is the lowest point of the curve) of infinity (because, as no. of workers reaches infinity, the cost of each worker approaches 0). This shows that the more bases you get, the more cost efficient your workers will be as there are no dis-economies of scale, while the reason on why the cost of each worker will come infinitely close to 0 as the no of workers increases lies in the idea of the economies of scale.

As each base should contain 1 command centre, it can only be employed efficiently if it is producing workers at the lowest cost, which is when the number of workers = 24. That means, to be at its most efficient, the command centre has to produce at least a certain amount of output. A command centre producing less than 24 workers will not be as efficient as a command centre producing 24 workers. This is the idea of factor indivisibility in the idea of 'economies of scale'.

*EDIT: Sorry to the zergs but these readings do not include hatcheries, drones and overlords. But using the same methods, in theory the zergs will need less workers to be efficient as the cost of the hatchery is 100 minerals less than the cc/nexus. I do not know the actual number as it requires another set of calculations (but of the same methods).

Conclusion:
24 workers is the best number because it saturates the mineral line, which will result in a higher cost efficiency, leaving you aside with more minerals to produce units.
And also, the more bases the better.
(Thanks Whiplash for reminding)
One may not be gosu, but passion alone makes him a Starcraft player.
Nevuk
Profile Blog Joined March 2009
United States16280 Posts
January 07 2010 08:42 GMT
#2
Having more than 80, maybe 100 workers is really prohibitive. Very interesting stuff.

A suggestion, though. For research in this area I think using probes is better as they are a bit less buggy in their mining patterns and have the fastest mining rate. (IE, a really fast terran can forcibly change the mining patterns of their like first 10 or so scvs to achieve quicker mining. It only gives you like an extra 30-50 minerals though). You would probably get less erroneous data with probes. Drones have the intermediate mining rate if you are interested in that, but zerg economy has an entire extra variable beyond the 3 that terran/protoss have.
DongTanks
Profile Joined January 2010
Singapore15 Posts
January 07 2010 11:17 GMT
#3
You would probably get less erroneous data with probes.

I'll put that in mind. Thanks for the input.
One may not be gosu, but passion alone makes him a Starcraft player.
Whiplash
Profile Blog Joined October 2008
United States2929 Posts
January 07 2010 11:31 GMT
#4
Can you have a conclusion or summary of what your trying to say here? I kinda read over most of it and I still don't understand. Is there an optimal number of workers we're trying to hit here? (keep in mind im posting this at 6:30 am and I haven't gone to sleep yet).
Cinematographer / Steadicam Operator. Former Starcraft commentator/player
DongTanks
Profile Joined January 2010
Singapore15 Posts
Last Edited: 2010-01-07 11:39:56
January 07 2010 11:39 GMT
#5
Ho ho!? Sorry 'bout dat. The conclusion is that 24 workers on each base with 8/9 patches of minerals is the best number, both because it saturates the mineral line and also it is the most cost efficient, leaving aside more minerals for producing units. And also the more expansions you have, the better
One may not be gosu, but passion alone makes him a Starcraft player.
d3_crescentia
Profile Blog Joined May 2009
United States4054 Posts
January 07 2010 11:40 GMT
#6
As a physicist I'd like to see some error analysis/uncertainties from multiple runs of the data. The LRAC numbers in particular look too close to be called definitive in comparison to the data of the SRAC. Also I'm sort of uncomfortable with how you define Average Mineral Spent/Worker, so if you could explain your methodology in a later post that would be awesome.

Also, if you want to improve your runs (or perhaps even automate them) you could potentially try via UMS maps.
once, not long ago, there was a moon here
inReacH
Profile Blog Joined August 2008
Sweden1612 Posts
Last Edited: 2010-01-07 11:49:59
January 07 2010 11:46 GMT
#7
Taking the ceteris paribus assumption...

Number of Workers | Average Mineral Gathered/Worker/Minute
4............................................78.5.
8 ...........................................60.0..

How can 4 workers be that much more efficient than 8 when the only difference between the first 4 and the next 4 is the tiny increase in distance they have to travel to get to their patch?
DongTanks
Profile Joined January 2010
Singapore15 Posts
Last Edited: 2010-01-07 11:58:43
January 07 2010 11:48 GMT
#8
As a physicist I'd like to see some error analysis/uncertainties from multiple runs of the data. The LRAC numbers in particular look too close to be called definitive in comparison to the data of the SRAC. Also I'm sort of uncomfortable with how you define Average Mineral Spent/Worker, so if you could explain your methodology in a later post that would be awesome.

Also, if you want to improve your runs (or perhaps even automate them) you could potentially try via UMS maps.


Oops... I didn't do multiple runs of the data and I didn't include uncertainties because this is really for an ungraded project in college.
Thanks for the suggestions, but I think I will prefer spending time playing the game rather than doing this whole experiments again DX (dead)
Also, regarding the LRAC, I had the intention to run the experiment again because...... I just do not have the apm to put all workers from all bases to mine at the same time.... but deadline was pressing and what I posted above is basically what I submitted (sigh...). However I think the argument is there (without the erroneous data) through logical thinking. And I believe you can still see the trend of the curve if the points are plotted, though it could be just luck that they are in the shape they should be.
One may not be gosu, but passion alone makes him a Starcraft player.
DongTanks
Profile Joined January 2010
Singapore15 Posts
January 07 2010 11:53 GMT
#9
How can 4 workers be that much more efficient than 8 when the only difference between them is the tiny increase in distance they have to travel to get to their patch?


That's why I said 'DO NOT take these readings as standards'....
I am really sorry but I just need to show some readings to support my arguments. The minimum I'll go is to let the data shows some kind of trend that supports my graphs.
One may not be gosu, but passion alone makes him a Starcraft player.
Gretorp
Profile Blog Joined September 2008
United States586 Posts
January 07 2010 15:57 GMT
#10
Very interesting and cool stuff. It'd be interesting to see the dynamics of time and how saturation is affected by depletion. I understand these graphs are based off of X amount of workers in the initial phase, but a big question would also be how the graphs change as the scvs start to scale to the number. I suppose it will be left to a project in the future sometime though :-)

Great stuff regardless.

Just a note by the way. I use to do these tests for maps to test mineral saturations and mining analysis as well. From your text, I see you used a stopwatch. What I use to do is go to single player, turn on all my cheats and kill the computer immediately. Then I'd make sure all the minerals were the same number, and I'd start mining the respective bases. For example, destination, i'd kill the computer, make all the mineral numbers the same in the computer base since they mined, then i'd get 24 scvs to go mine. I'd leave it on(using windows mode) and surf the web or do whatever, maybe even go to sleep! Then I'd look at the replay and note how many minerals were mined just before the first patch was empty, and count total amount of minerals mined, and i'd track how long the replay was on minus the time when the initial scvs started working. My assumptions while doing this would be things unique to destination pathing, 8 mineral patches, SCVs mining(others path the same).
d3 is correct however and you need duplication and statistical accuracy when you're finalizing your projects, just for future reference. 30 times generally implies safe statistical accuracy.
I love your analysis though:-) great work
I am Unheard Change
Piy
Profile Blog Joined January 2008
Scotland3152 Posts
January 07 2010 16:22 GMT
#11
So what, there should be a noticeable improvement in prodction efficiency if you have 72 SCV's when you're at 3 bases as opposed to 60-65, which is the current standard number?
My. Copy. Is. Here.
RaGe
Profile Blog Joined July 2004
Belgium9950 Posts
January 07 2010 16:39 GMT
#12
haha, this has been researched many times, and 23/24 workers is always the result they get as optimal for 8 patch expansions
Moderatorsometimes I get intimidated by the size of my right testicle
Impervious
Profile Blog Joined March 2009
Canada4217 Posts
January 07 2010 19:12 GMT
#13
Looking at the graph of the SRAC, there is very little change in the effectiveness of the mining when you are near that point (ie, the tangent there is nearly zero).

So, in game terms, even if you aren't at the exact 24 workers/expansion, but you are close (under if you have a lot of expansions, over if you are planning on making a new expansion), you will be in a nearly ideal situation. I don't think it's even possible to model the ideal game situation.....

Also, because these results used SCVs, this is the data for Terran. Using Probes, you would find a different number (although probably very close to 24, maybe 23 or 25). Using Zerg, the number would be lower. Trials with all 3 races would be necessary to determine what number is most effective for each race.

Awesome work though. Too bad you aren't going to share everything.....
~ \(ˌ)im-ˈpər-vē-əs\ : not capable of being damaged or harmed.
Crt
Profile Joined November 2009
247 Posts
January 07 2010 19:47 GMT
#14
if you want to further your research, in addition to an economic curve, have attack (damage/second) and defense curve with basic units.

the point is to find a balance on when to produce units and enough damage pts to defend against rushes.

Best done with Excel.
Comeh
Profile Blog Joined July 2008
United States18919 Posts
January 07 2010 19:58 GMT
#15
A fun little read for me. (man oh man, am I not ready to go back to college).
May I ask for what class this is for? As an Econ major, I'm just curious .
ヽ(⌐■_■)ノヽ(⌐■_■)ノヽ(⌐■_■)ノヽ(⌐■_■)ノヽ(⌐■_■)ノヽ(⌐■_■)ノDELETE ICEFROGヽ(⌐■_■)ノヽ(⌐■_■)ノヽ(⌐■_■)ノヽ(⌐■_■)ノヽ(⌐■_■)ノヽ(⌐■_■)ノヽ(
Xeofreestyler
Profile Blog Joined June 2005
Belgium6776 Posts
January 07 2010 20:09 GMT
#16
The question now is: can BW API be used to lower the optimal number ?
Graphics
Zona
Profile Blog Joined May 2007
40426 Posts
January 08 2010 13:22 GMT
#17
On January 08 2010 05:09 Xeofreestyler wrote:
The question now is: can BW API be used to lower the optimal number ?

I expect so. By taking into account worker positioning and how long a mineral patch has until it is free for mining by another worker, there should be minimal wandering time. It's something I have been planning to code once I have some free time.
"If you try responding to those absurd posts every day, you become more damaged. So I pay no attention to them at all." Jung Myung Hoon (aka Fantasy), as translated by Kimoleon
ghostWriter
Profile Blog Joined January 2009
United States3302 Posts
January 08 2010 13:50 GMT
#18
This was very interesting. I always keep making workers, but it seems that I'm overproducing.
Sullifam
Impervious
Profile Blog Joined March 2009
Canada4217 Posts
January 08 2010 17:13 GMT
#19
On January 08 2010 22:22 Zona wrote:
Show nested quote +
On January 08 2010 05:09 Xeofreestyler wrote:
The question now is: can BW API be used to lower the optimal number ?

I expect so. By taking into account worker positioning and how long a mineral patch has until it is free for mining by another worker, there should be minimal wandering time. It's something I have been planning to code once I have some free time.


That would be horrible to try to code - the pathfinding issues would be difficult to compensate for.....
~ \(ˌ)im-ˈpər-vē-əs\ : not capable of being damaged or harmed.
ZenDeX
Profile Blog Joined May 2008
Philippines2916 Posts
January 09 2010 17:09 GMT
#20
How do I know if I have 24 workers on my mineral line?
1 2 3 Next All
Please log in or register to reply.
Live Events Refresh
Replay Cast
00:00
KungFu Cup 2026 Week 7
CranKy Ducklings120
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Nina 100
StarCraft: Brood War
GuemChi 6155
Sea 2491
Artosis 592
ajuk12(nOOB) 17
Dota 2
monkeys_forever610
NeuroSwarm154
League of Legends
JimRising 663
Counter-Strike
Stewie2K1045
m0e_tv345
taco 11
Super Smash Bros
hungrybox470
Other Games
summit1g12321
Day[9].tv507
C9.Mang0484
PiGStarcraft314
Maynarde131
Trikslyr56
CosmosSc2 42
Organizations
Other Games
gamesdonequick1061
Counter-Strike
PGL626
Other Games
BasetradeTV54
StarCraft: Brood War
lovetv 9
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 16 non-featured ]
StarCraft 2
• Hupsaiya 73
• davetesta24
• CranKy Ducklings SOOP21
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Lourlo317
Other Games
• Scarra1026
• Day9tv507
Upcoming Events
The PondCast
7h 53m
Kung Fu Cup
8h 53m
WardiTV Qualifier
11h 53m
GSL
1d 7h
Cure vs sOs
SHIN vs ByuN
Replay Cast
1d 21h
GSL
2 days
Classic vs Solar
GuMiho vs Zoun
WardiTV Spring Champion…
2 days
Replay Cast
2 days
Sparkling Tuna Cup
3 days
WardiTV Spring Champion…
3 days
[ Show More ]
Replay Cast
3 days
RSL Revival
4 days
Classic vs SHIN
Rogue vs Bunny
BSL
4 days
Replay Cast
4 days
Afreeca Starleague
5 days
Flash vs Soma
RSL Revival
5 days
BSL
5 days
Patches Events
5 days
Universe Titan Cup
6 days
Rogue vs Percival
Wardi Open
6 days
Monday Night Weeklies
6 days
Replay Cast
6 days
Liquipedia Results

Completed

Escore Tournament S2: W7
2026 GSL S1
Nations Cup 2026

Ongoing

BSL Season 22
ASL Season 21
IPSL Spring 2026
KCM Race Survival 2026 Season 2
Acropolis #4
KK 2v2 League Season 1
BSL 22 Non-Korean Championship
YSL S3
SCTL 2026 Spring
RSL Revival: Season 5
Heroes Pulsing #1
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2

Upcoming

Escore Tournament S2: W8
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
Maestros of the Game 2
WardiTV Spring 2026
2026 GSL S2
Bounty Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.