Start() not called after application.loadlevel

I’m not clear on wether Start() should be called when I load the scene with the object that owns the script.

This doesn’t seem to be the case. Start() is only being called the first time the scene is loaded, when I load it again - its not being called.

Is there a script that I can attach to an object that is called each time that object is created (each time that level is loaded?

Start() is indeed called each time the level loads. If you instantiate an object, Start() will be called on it as well when it is created.

Test this using print("This is the Start() function"); inside Start()

What code are you expecting to be triggered? Is it possible that something else is happening that’s making it so you don’t get the result you expect?