Why does the player jump is not so high if he touch 2 objects at the same time as if it touch only 1 object?

void OnCollisionStay(Collision collisionInfo)
{

        if (collisionInfo.gameObject.tag == "jumpable_thing")
        {
            CanJump = true;
      
        }
    }

 void OnCollisionExit(Collision collisionInfo)
    {
        CanJump = false;
        jump = false;
    }

void FixedUpdate ()
    {
   
        float moveHorizontal = Input.GetAxis("Horizontal");
        float moveVertical = Input.GetAxis("Vertical");

        
        Vector3 movement = new Vector3(moveHorizontal, 0.0f, moveVertical);

        rigidbody.AddForce(movement * speed);


        if (jump == true)
        {
            rigidbody.AddForce(Vector3.up * jumpSpeed);
            CanJump = false;
            jump = false;
        }

	}

Avoid OnCollisionStay and OnTriggerStay. OnCollisionEnter / OnTriggerEnter is sufficient for this task.