diff --git a/job.go b/job.go
index d6082ab70233ebdb128ca11628e5af0607cc081e..fbb61c79533216468c33a0cff9588cf28e1731f7 100644
--- a/job.go
+++ b/job.go
@@ -107,7 +107,6 @@ func (j *Job[T]) GetPersistence() JobPersistence {
 		MaxRetries:   j.maxRetries,
 		RetryDelay:   j.retryDelay,
 		Dependencies: j.dependencies,
-		Runnable:     j.runner.GetPersistence(),
 
 		Pause:       j.pause,
 		PauseReason: j.pauseReason,
@@ -117,6 +116,10 @@ func (j *Job[T]) GetPersistence() JobPersistence {
 		Stats: j.stats,
 	}
 
+	if j.runner != nil {
+		job.Runnable = j.runner.GetPersistence()
+	}
+
 	if j.scheduler != nil {
 		job.Scheduler = j.scheduler.GetPersistence()
 	}