diff --git a/manager/runner.go b/manager/runner.go
index <HASH>..<HASH> 100644
--- a/manager/runner.go
+++ b/manager/runner.go
@@ -427,7 +427,7 @@ func (r *Runner) Signal(s os.Signal) error {
 func (r *Runner) Run() error {
 	log.Printf("[INFO] (runner) running")
 
-	var renderedAny bool
+	var wouldRenderAny, renderedAny bool
 	var commands []*config.ConfigTemplate
 	depsMap := make(map[string]dep.Dependency)
 
@@ -541,6 +541,9 @@ func (r *Runner) Run() error {
 				// Make a note that we have rendered this template (required for once
 				// mode and just generally nice for debugging purposes).
 				r.markRenderTime(tmpl.ID(), false)
+
+				// Record that at least one template would have been rendered.
+				wouldRenderAny = true
 			}
 
 			// If we _actually_ rendered the template to disk, we want to run the
@@ -572,7 +575,7 @@ func (r *Runner) Run() error {
 	}
 
 	// Check if we need to deliver any rendered signals
-	if renderedAny {
+	if wouldRenderAny || renderedAny {
 		// Send the signal that a template got rendered
 		select {
 		case r.renderedCh <- struct{}{}:
Send signal to watching applications on would render