# GetExecutionOrder(MonoScript)

> Gets the execution order for a MonoScript.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor](/engine/6000.7/script-reference/unityeditor.md)
* **Assembly:** UnityEditor.CoreModule

```csharp
public static int GetExecutionOrder(MonoScript script)
```

### Parameters

**** (\[MonoScript]\(/engine/6000.7/script-reference/unityeditor/monoscript)): The script to retrieve the execution order for.

### Returns

| Type                                                       | Description                                                                                                        |
| ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) | Returns the execution order for the given [MonoScript](/engine/6000.7/script-reference/unityeditor/monoscript.md). |

### Remarks

This is the same execution order that the [Script Execution Order Settings](/engine/6000.7/manual/unity-editor/editor-settings-reference/comp-manager-group/class-mono-manager.md) window displays.

The default execution order for scripts is 0.

Additional Resources: [MonoImporter.SetExecutionOrder](/engine/6000.7/script-reference/unityeditor/monoimporter/setexecutionorder.md).

### Examples

```csharp
using UnityEngine;
using UnityEditor;

class Example
{
    [MenuItem("Examples/Get Execution Order for a Script")]
    public static void GetExecutionOrderForAScript()
    {
        var assetPath = "Assets/MyMonoBehaviour.cs";
        var monoImporter = AssetImporter.GetAtPath(assetPath) as MonoImporter;
        var executionOrder = MonoImporter.GetExecutionOrder(monoImporter.GetScript());

        Debug.Log($"Execution order for {monoImporter.assetPath} is {executionOrder}");
    }
}
```
