GameObject.FindWithTag not working

Hello i have a script that counts score and a script on chests that tries to access that score script on the player. There are multiple chests and they are being instantiated in the Start Function.
But when i try to access the PLayer score scirpt it doesnt find it. The player is tagged with Player.
What am i doing wrong?

In the start function:

        SCOREMAN = GameObject.FindWithTag("Player").GetComponent<ScoreScript>();

On the player:

public class ScoreScript : MonoBehaviour
    public Text ScoreText;
    public float Score;

    void Update()
        ScoreText.text = Score.ToString("F0");
        Score += 45.2f * Time.deltaTime;

If there’s only one player finding it by tag in all the objects is very inefficient, you should try to message it directly. The most obvious way by adding it to a public game object on your chests.

If that’s not possible something like this might work

Set up your player so that it can receive data from other game objects

public class PlayerScript : MonoBehaviour {
    public static PlayerScript current; 
    void Start ()
        current = this;
    public void GetBooty(int i)
        //handle the booty

then on your chest you can get to send a message to that player script:

        int Booty;