Instantiate Object position C#, not visible after new pos

Hello, so I have a problem with the visibility of my instantiated guiText, the text is showing up aslong as i dont change the position on the instantiate. It works fine with the following code and the guitext spawns at 0,0,0 position:

	void SpawnObject(float points ,   float x ,   float y ){
			Transform gui = Instantiate (floatText) as Transform;

			gui.guiText.text = "+" + points.ToString();
			gui.guiText.material.color = new Color(1,1,1,1.0f);
	}

But once I change the Transform line into the following:

void SpawnObject(float points ,   float x ,   float y ){
			Vector3 mousePosition = Input.mousePosition;
			Transform gui = Instantiate (floatText, mousePosition, transform.rotation) as Transform;

			gui.guiText.text = "+" + points.ToString();
			gui.guiText.material.color = new Color(1,1,1,1.0f);
	}

After this change the text does appear in my hierarchy at the desired position, but for some reason it is not visible when i change the position. Any thoughts?

guiText objects live in Viewport space. Viewport coordinates start in the lower left of teh screen at (0,0), and go to the upper right of the screen with a value of (1,1). Input.mousePosition are in Screen coordinates, which start at (0,0) in the lower left, and goes to (Screen.width, Screen.height) in the upper right. So to fix your code, insert between lines 2 and 3:

mousePosition = Cameara.main.ScreenToViewportPoint(mousePosition);