How to clean bird feeders and nest boxes

, 28 December 2021
How to clean bird feeders and nest boxes
© Vine House Farm

How to clean bird feeders

Dirty feeders can help spread diseases such as Avian Pox among garden birds. Regular cleaning of feeders will help keep your garden birds healthy.

Keep bird feeders clean with these simple steps.

How to clean bird feeders
Click to view larger

Winter is a great time to be cleaning nest boxes too.

How to clean nest boxes
Click to view larger
Leave a comment

Comments

  • Thanks for these valuable and timely tips.

    03 Jan 2022 14:21:00

  • Olivia James:

    Hi. This is very good. Thank you so much. Could I ask you sth I’ve been wondering about for some time? If I were to get a bird bath, surely it would get a bit rusty over time, wouldn’t it? I notice little bits of rust in other people’s bird baths. They tell me, when I ask, that it doesn’t matter. But could you please tell me if it does? I trust you more than them! Thank you, Olivia

    03 Jan 2022 23:03:00

  • Annie James:

    Why is it important to clean the feeders outside and to not bring them inside? I’ve always cleaned mine in the kitchen sink using washing up liquid (rinsed off of course). Could you explain this please. I

    REPLY: We would always recommend cleaning your feeders outside and maintain careful personal hygiene, including wearing gloves and making sure that brushes and buckets are not used for other purposes, as some diseases can affect human and domestic animal health.

    04 Jan 2022 08:37:00

  • Dick Woods:

    I think you are doing a great job in highlighting the importance of cleaning wild bird feeders, following the death of around sixty Greenfinches in my garden a few years ago from Trichomonosis I was frustrated by the poor quality of garden bird feeders, the fact that they allow water ingress, and that they are a real pain to clean. So I invents one that can be cleaned in minutes without removing the food. We recommend weekly cleaning. Greenfinches are now endangered, Chaffinches are in trouble too. Keep up the good work please.

    04 Jan 2022 21:17:00

  • Julia Macfarlane:

    Thank you. I have downloaded both of the very useful set of instructions. I have often wondered if I am cleaning my bird boxes and feeders properly. I would hate to think I am doing more harm than good!

    06 Jan 2022 13:52:00

Time Δ Debug Message - Perch Runway 3.2
1783030389.70060 [906] SELECT p.pagePath, pr.routePattern, pr.routeRegExp, p.pageTemplate, pr.routeOrder, s.settingValue AS siteOffline FROM swt_pages_staging p LEFT JOIN swt_page_routes pr ON p.pageID=pr.pageID LEFT JOIN swt_settings s ON s.settingID='siteOffline' UNION SELECT NULL AS pagePath, pr2.routePattern, pr2.routeRegExp, pr2.templatePath AS pageTemplate, pr2.routeOrder, NULL AS siteOffline FROM swt_page_routes pr2 WHERE templateID!=0 ORDER BY routeOrder ASC, pagePath ASC
1783030389.72630.0257Matched route: news/[slug:s]
1783030389.72650.0002Server address: 216.73.217.131
1783030389.72660.0001Using master page: /templates/pages/blog/post.php
1783030389.72660Page arguments:
Array
(
    [0] => /news/how-to-clean-bird-feeders-and-nest-boxes
    [s] => how-to-clean-bird-feeders-and-nest-boxes
    [1] => how-to-clean-bird-feeders-and-nest-boxes
)
1783030389.72690.0003 [1] SELECT * FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783030389.72810.0012 [86] SELECT DISTINCT settingID, settingValue FROM swt_settings WHERE userID=0
1783030389.73010.002 [1] SELECT locationID FROM swt_shop_tax_locations WHERE locationIsHome=1 LIMIT 1
1783030389.73070.0006INSERT INTO swt_shop_cart(memberID,locationID,currencyID,cartPricing,cartProperties) VALUES(NULL,'1',47,'standard','[]')
1783030389.73280.002 [1] SELECT * FROM swt_shop_cart WHERE cartID=22540876
1783030389.73340.0006 [1] SELECT * FROM swt_shop_cart WHERE cartID=22540876
1783030389.73410.0007 [nil] SELECT * FROM swt_shop_sales WHERE saleFrom<='2026-07-02 22:13:00' AND saleTo>'2026-07-02 22:13:00' AND saleActive=1 AND saleDeleted IS NULL ORDER BY saleOrder ASC
1783030389.73560.0016 [1] SELECT SQL_CALC_FOUND_ROWS DISTINCT tbl.* FROM ( SELECT idx.itemID, main.*, idx2.indexValue as sortval FROM swt_blog_index idx JOIN swt_blog_posts main ON idx.itemID=main.postID AND idx.itemKey='postID' JOIN swt_blog_index idx2 ON idx.itemID=idx2.itemID AND idx.itemKey='postID' AND idx2.indexKey='_id' WHERE 1=1 AND ((idx.indexKey='postSlug' AND idx.indexValue='how-to-clean-bird-feeders-and-nest-boxes')) AND idx.itemID=idx2.itemID AND idx.itemKey=idx2.itemKey GROUP BY idx.itemID, idx2.indexValue, postID ) as tbl WHERE (postStatus='Published' AND postDateTime<='2026-07-02 22:13:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 10
1783030389.73830.0027 [1] SELECT FOUND_ROWS() AS `count`
1783030389.73910.0008 [1] SELECT * FROM swt_blog_posts WHERE postID=2685 AND postStatus='Published' AND postDateTime<='2026-07-02 22:13:00'
1783030389.73990.0009 [13] SELECT * FROM swt_blog_sections ORDER BY sectionTitle ASC
1783030389.74070.0008 [1] SELECT * FROM swt_blogs ORDER BY blogTitle ASC
1783030389.74160.0008 [1] SELECT * FROM swt_categories WHERE catID=30 LIMIT 1
1783030389.74240.0008Using template: /templates/blog/post.html
1783030389.74260.0002 [162] SELECT catID, catPath FROM swt_categories
1783030389.74350.001 [1] SELECT * FROM swt_blog_posts WHERE postStatus='Published' AND postDateTime<='2026-07-02 22:13:00' AND postSlug='how-to-clean-bird-feeders-and-nest-boxes'
1783030389.76440.0209Using template: /templates/blog/post.html
1783030389.76490.0005 [250] SELECT country, countryID FROM swt_shop_countries WHERE countryActive=1 ORDER BY country ASC
1783030389.76640.0015Using template: /templates/pages/attributes/seo.html
1783030389.76670.0002 [1] SELECT regionID, regionTemplate, regionPage, regionRev AS rev FROM swt_content_regions WHERE regionKey='Banner image' AND (regionPage='/news/post' OR regionPage='*')
1783030389.76760.0009 [nil] SELECT * FROM ( SELECT idx.itemID, c.regionID, idx.pageID, c.itemJSON, idx2.indexValue as sortval FROM swt_content_index idx JOIN swt_content_items c ON idx.itemID=c.itemID AND idx.itemRev=c.itemRev AND idx.regionID=c.regionID JOIN swt_content_index idx2 ON idx.itemID=idx2.itemID AND idx.itemRev=idx2.itemRev AND idx2.indexKey='_order' WHERE ((idx.regionID=104 AND idx.itemRev=0)) AND idx.itemID=idx2.itemID AND idx.itemRev=idx2.itemRev ) as tbl GROUP BY itemID, pageID, itemJSON, sortval, regionID ORDER BY sortval ASC
1783030389.76890.0014 [82] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageDepth >=0 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1783030389.77170.0028 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783030389.77230.0005 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783030389.77440.0021Using template: /templates/navigation/ps_nav_template.html
1783030389.77440.0001 [6] Using template: /templates/navigation/ps_nav_template_children.html
1783030389.77540.001 [4] Using template: /templates/navigation/ps_nav_template_children.html
1783030389.77590.0006 [29] Using template: /templates/navigation/ps_nav_template_children.html
1783030389.77890.003 [10] Using template: /templates/navigation/ps_nav_template_children.html
1783030389.77980.0009 [7] Using template: /templates/navigation/ps_nav_template_children.html
1783030389.78050.0007 [9] Using template: /templates/navigation/ps_nav_template_children.html
1783030389.78370.0032 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' OR pageSortPath='/news/post' LIMIT 1
1783030389.78460.001 [1] SELECT * FROM swt_pages_staging WHERE pageHidden=0 AND pageNew=0 AND pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition
1783030389.78710.0024 [1] Using template: /templates/navigation/breadcrumbs.html
1783030389.78770.0006Using template: /templates/blog/post.html
1783030389.78810.0004 [1] SELECT * FROM swt_blog_authors WHERE authorID='1' LIMIT 1
1783030389.78890.0008Using template: /templates/blog/author.html
1783030389.78930.0004 [1] SELECT SQL_CALC_FOUND_ROWS DISTINCT tbl.* FROM ( SELECT idx.itemID, main.*, idx2.indexValue as sortval FROM swt_blog_index idx JOIN swt_blog_posts main ON idx.itemID=main.postID AND idx.itemKey='postID' JOIN swt_blog_index idx2 ON idx.itemID=idx2.itemID AND idx.itemKey='postID' AND idx2.indexKey='_id' WHERE 1=1 AND ((idx.indexKey='postSlug' AND idx.indexValue='how-to-clean-bird-feeders-and-nest-boxes')) AND idx.itemID=idx2.itemID AND idx.itemKey=idx2.itemKey GROUP BY idx.itemID, idx2.indexValue, postID ) as tbl WHERE (postStatus='Published' AND postDateTime<='2026-07-02 22:13:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 1
1783030389.79140.0021 [1] SELECT FOUND_ROWS() AS `count`
1783030389.79210.0007 [1] Using template: /templates/blog/post.html
1783030389.79510.003Using template: /templates/blog/comment_form.html
1783030389.79620.0011 [5] SELECT * FROM swt_blog_comments WHERE 1=1 AND postID=2685 AND commentStatus='LIVE' ORDER BY FIELD(webmentionType, 'like', 'repost', 'comment', NULL) ASC, commentDateTime ASC
1783030389.84520.049 [5] Using template: /templates/blog/comment.html
1783030389.84690.0016Using template: /templates/blog/post.html
1783030389.84720.0003 [1] SELECT * FROM swt_blog_authors WHERE authorID='1' LIMIT 1
1783030389.84840.0012 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/what-we-do' OR pageSortPath='/what-we-do' LIMIT 1
1783030389.84910.0007 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-002' LIMIT 1
1783030389.84970.0006 [7] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-002%' AND pageDepth >=1 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1783030389.85180.0021 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783030389.85220.0005 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783030389.85410.0018 [6] Using template: /templates/navigation/footer-nav.html
1783030389.85490.0008 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1783030389.85540.0005 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1783030389.85590.0004 [38] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-005%' ORDER BY pageTreePosition ASC
1783030389.85810.0022 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783030389.85860.0005 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783030389.86050.0019 [10] Using template: /templates/navigation/footer-nav.html
1783030389.86390.0034 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/visit' OR pageSortPath='/visit' LIMIT 1
1783030389.86460.0008 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-004' LIMIT 1
1783030389.86510.0005 [30] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-004%' AND pageDepth >=1 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1783030389.86740.0023 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783030389.8680.0006 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783030389.870.002 [29] Using template: /templates/navigation/footer-nav.html
1783030389.87220.0022 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1783030389.87310.0009 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1783030389.87360.0005 [11] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-005%' AND pageDepth >=1 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1783030389.87570.0021 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783030389.87630.0006 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783030389.87830.002 [10] Using template: /templates/navigation/footer-nav.html
1783030389.88050.0022Request time: 0.1813
1783030389.88050Process time: 0.181
1783030389.88050Memory: 1.6222