diff --git a/eth/filters/api.go b/eth/filters/api.go
index 46c9f44bb0e7e0516ba9f55f5e2e4128686a966f..30d7b71c310c7cbd62ee0cd06e9d99cc0772bb47 100644
--- a/eth/filters/api.go
+++ b/eth/filters/api.go
@@ -78,6 +78,7 @@ func NewPublicFilterAPI(backend Backend, lightMode bool) *PublicFilterAPI {
 // Tt is started when the api is created.
 func (api *PublicFilterAPI) timeoutLoop() {
 	ticker := time.NewTicker(5 * time.Minute)
+	defer ticker.Stop()
 	for {
 		<-ticker.C
 		api.filtersMu.Lock()