Should I be worried about how many tasks the server can handle at once?

In my game, each player on join gets a single RunService.Heartbeat function that calls on 5 functions repeatedly throughout the game. But the function where this RunService is called from has too many lines that make it difficult to read. About half of it is dedicated to a single function.

Now I’m thinking of adding 2 RunService.Heartbeat function per each player to split that single function away from the rest. So if there’s 10 players in the game, theres 20 total RunService.Heartbeat running at all times. Likewise if there’s 20 there 40 RunService.

My question is, should I be worried about how many RunService.Heartbeat loops the server can handle? More info below…

The five functions that get called repeatedly
1: AddCpsToCash() ← spits cash into their DataStore
2: UpdateClientRegister() ← Updates the clients visual on multipliers stacked on their clicks/sec
3: CheckForActivePotions() ← Decreases timer on any active potions they have
4: IsUpgradeReady() ← Signal fires any upgrades the player unlocks with sufficient cash
5: ToBillboard() ← Updates the cash billboard on top of their characters head.

This is what I want to split off.

local function CheckForActivePotions(DeltaTime)
		if Adrenite.IsRunning then
			if Adrenite.Duration > 0 then
				Adrenite.Duration -= DeltaTime
				ClientPotionsTimer.Adrenite.Value = Adrenite.Duration
			else
				Adrenite.IsRunning = false
				Register_Multipliers.Adrenite = 0
			end
		end
		if Squeezy.IsRunning then
			if Squeezy.Duration > 0 then
				Squeezy.Duration -= DeltaTime
				ClientPotionsTimer.Squeezy.Value = Squeezy.Duration
			else
				Squeezy.IsRunning = false
				Cps_Multipliers.Squeezy = 0
			end
		end
		if Congles.IsRunning then
			if Congles.Duration > 0 then
				Congles.Duration -= DeltaTime
				ClientPotionsTimer.Congles.Value = Congles.Duration
			else
				Congles.IsRunning = false
				Cps_Multipliers.Congles = 0
			end
		end
		if CPS_Booster.IsRunning then
			if CPS_Booster.Duration > 0 then
				CPS_Booster.Duration -= DeltaTime
				buffsTimer.CPS_Booster.Value = CPS_Booster.Duration
			else
				CPS_Booster.IsRunning = false
				Cps_Multipliers.CPS_Booster = 0
			end
		end
		if Clicks_Booster.IsRunning then
			if Clicks_Booster.Duration > 0 then
				Clicks_Booster.Duration -= DeltaTime
				buffsTimer.Clicks_Booster.Value = Clicks_Booster.Duration
			else
				Clicks_Booster.IsRunning = false
				Register_Multipliers.Clicks_Booster = 0
			end
		end
	end

Where it gets ran:

local function Clock(DeltaTime)
		--// Should the player leave, call Disconnect() on this and ClicksHandler function
		if not player:IsDescendantOf(Players) then
			ClockHandler[player]:Disconnect()
			return
		end

		UpdateClientRegister()
		AddCpsToCash(DeltaTime)

		CheckForActivePotions(DeltaTime)
		UpgLib.IsUpgradeReady(player, ProfileData)
		ToBillboard()
	end

ClockHandler[player] = RunService.Heartbeat:Connect(Clock)