In your case (tasks), the save mothod will not trigger a signal. Because it's running out side of Django process. Django signals are bit confusing 😕. If you fellow documentation you would expect it to work. But in reality signals are only sent from a Django context( views , admin, forms,...)