Respawn not working, keep getting error (C#)

Hey, so the error I am getting is this:

NullReferenceException: Object reference not set to an instance of an object
PlayerController.Start () (at Assets/Scripts/PlayerController.cs:25)

and here is my code:

using UnityEngine;
using System.Collections;

[System.Serializable]

public class PlayerController : MonoBehaviour
{
	public float speed;

	
	void FixedUpdate ()
	{
		float moveHorizontal = Input.GetAxis ("Horizontal");
		float moveVertical = Input.GetAxis ("Vertical");
		
		Vector3 movement = new Vector3 (moveHorizontal, 0.0f, moveVertical);
		rigidbody.velocity = movement * speed;

	}

	public Transform respawnPosition;
	
	void Start()
	{
		respawnPosition = GameObject.FindGameObjectWithTag("Spawn").transform;
	}
	
	
	void OnTriggerEnter (Collider other)
	{

		
		if  (other.gameObject.tag == "EnemyPatroller")
		{
			transform.position = respawnPosition.position;
		}
	}
}

Does anyone know any reason why I get that error? the enemypatroller and spawn are tagged correctly so its not that.

Check the Start method, where you assign respawnPosition. Likely there is no GameObject tagged “Spawn” in your scene, so it returns null when trying to locate one using FindGameObjectWithTag. Then the exception happens upon attempting to access its transform property.