What plants should I put in my pond?

Newly created ponds are a fantastic habitat that is rare to find these days. In fact some species, such as mayflies, are usually only found in recent ponds. So unless you need the pond to look fully established straight away, why not wait a bit to see what naturally colonises? Freshwater species are amazingly fast at finding new ponds, so it shouldn't take long. This also means you avoid accidentally introducing damaging invasive pond plants to your garden.

If you decide you would like to add a few plants, then aim for a variety of different types from submerged and floating, to emergent and marginal. You'll want to create loads of structure and diversity in the pond for wildlife to hide and live in. The lists below are a good place to start.

Don't add topsoil into your pond as this will add nutrients and pollute the water. Children's play sand or washed gravel are good inert substrates to plant in. Try to plant around 2 to 3 plants per square metre as they will spread rapidly.

Oxygenators

Usually submerged plants. Some native species can be fussy, especially if pond water quality is poor, but these are some of the most tolerant:
  • Curled pondweed (Potamogeton crispus)
  • Rigid hornwort (Ceratophyllum demersum)
  • Water crowfoot (Ranunculus aquatilis)
  • Common water starwort (Callitriche stagnalis)
  • Spiked water milfoil (Myriophyllum spicatum) - Do not accidentally use M. aquaricum, known as Parrot's feather, which is non-native and extremely invasive.

Floating plants

Plants whose leaves float on the surface, providing shade to the water below and reducing the growth of algae. Some plants may be rooted but others float freely. The leaves also act as platforms for viewing, courting or mating for a variety of insects.
  • Amphibious bistort (Polyginum amphibium)
  • Frogbit (Hydrocharis morsus-ranae)
  • Broad-leaved pondweed (Potamogeton natans) - Can take over in very small ponds.

Emergent plants

Plants with erect stems and leaves which emerge above the water's surface. These are important for dragonfly nymphs to crawl up before they become adult flying insects. Some of these can quickly take over a garden pond, so may need to be cut back.
  • Branched bur-reed (Sparganium erectum)
  • Bogbean (Menyanthes trifoliata)
  • Greater spearwort (Ranunculus lingua)
  • Greater pond sedge (Carex riparia)
  • Small sweet grass (Glyceria fluitans)

Marginal plants

Plants that need to grow at the shallow edges of the pond, extending out into the water. Some need to be permanently in a few centimetres of water, whilst others can tolerate periodic drying out.
  • Water forget-me-not (Myositis scorpioides)
  • Water mint (Mentha aquatica)
  • Water speedwell (Veronica anagallis-aquatica)
  • Marsh marigold (Caltha palustris)
  • Lesser spearwort (Ranunculus flammula)

Marsh or bog plants

Wetland plants that grow near the water's edge. These can be beautiful and bring architectural interest to the pond. Different plants have different tolerances to drying out.
  • Purple loosestrife (Lythrum salicaria)
  • Ragged robin (Lychnis flos-cuculi)
  • Pendulous sedge (Carex pendula)
  • Marsh woundwort (Stachys palustris)
  • Cuckooflower (Cardamine pratensis)


Plants to avoid in your pond


Posted in: Ponds on 18 June 2015


Back to the in your garden homepage

Time Δ Debug Message - Perch Runway 3.2
1787568512.72250 [907] 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
1787568512.79180.0693Matched route: discover/in-your-garden/article/[i:id]
1787568512.79190.0001Server address: 216.73.217.165
1787568512.7920Using master page: /templates/pages/in-your-garden/post.php
1787568512.7920Page arguments:
Array
(
    [0] => /discover/in-your-garden/article/133
    [id] => 133
    [1] => 133
)
1787568512.79220.0002 [1] SELECT * FROM swt_pages_staging WHERE pagePath='/discover/in-your-garden/article' LIMIT 1
1787568512.79330.0011 [86] SELECT DISTINCT settingID, settingValue FROM swt_settings WHERE userID=0
1787568512.79580.0024 [1] SELECT locationID FROM swt_shop_tax_locations WHERE locationIsHome=1 LIMIT 1
1787568512.79650.0007INSERT INTO swt_shop_cart(memberID,locationID,currencyID,cartPricing,cartProperties) VALUES(NULL,'1',47,'standard','[]')
1787568512.81090.0144 [1] SELECT * FROM swt_shop_cart WHERE cartID=24431944
1787568512.81390.003 [1] SELECT * FROM swt_shop_cart WHERE cartID=24431944
1787568512.81460.0007 [nil] SELECT * FROM swt_shop_sales WHERE saleFrom<='2026-08-24 10:48:00' AND saleTo>'2026-08-24 10:48:00' AND saleActive=1 AND saleDeleted IS NULL ORDER BY saleOrder ASC
1787568512.81550.0009 [1] SELECT collectionID, collectionTemplate FROM swt_collections WHERE collectionKey='Wildcall'
1787568512.81620.0006 [1] SELECT * FROM ( SELECT idx.itemID, ci.collectionID, ci.itemJSON, idx2.indexValue as sortval FROM swt_collection_index idx JOIN swt_collection_items ci ON idx.itemID=ci.itemID AND idx.itemRev=ci.itemRev AND idx.collectionID=ci.collectionID JOIN swt_collection_revisions cr ON idx.itemID=cr.itemID AND idx.itemRev=cr.itemRev AND idx.collectionID=ci.collectionID JOIN swt_collection_index idx2 ON idx.itemID=idx2.itemID AND idx.itemRev=idx2.itemRev AND idx2.indexKey='_order' WHERE (idx.collectionID=5) AND ((idx.indexKey='_id' AND idx.indexValue=133)) AND idx.itemID=idx2.itemID AND idx.itemRev=idx2.itemRev ) as tbl GROUP BY itemID, itemJSON, sortval ORDER BY sortval ASC
1787568512.82910.013Using template: /templates/content/wildcall.html
1787568512.82930.0002 [1] Using sub-template: /templates/content/mixed_content.html
1787568512.82950.0002Using sub-template: /templates/content/text_block.html
1787568512.82950Using sub-template: /templates/content/thumbnails.html
1787568512.82960Using sub-template: /templates/content/image.html
1787568512.82960Using sub-template: /templates/content/gallery.html
1787568512.82960Using sub-template: /templates/content/video.html
1787568512.82970.0001Using sub-template: /templates/content/ask_inline.html
1787568512.82970Using sub-template: /templates/content/legacy_request_form.html
1787568512.82980Using sub-template: /templates/content/image.html
1787568512.82980Using sub-template: /templates/content/code_block.html
1787568512.82990.0001Using sub-template: /templates/content/customisable_donate_form.html
1787568512.82990Using sub-template: /templates/content/contact_form.html
1787568512.83010.0001Using sub-template: /templates/forms/details.html
1787568512.83010.0001Using sub-template: /templates/forms/_data_protection.html
1787568512.83020.0001Using sub-template: /templates/forms/_personal_details.html
1787568512.83020.0001Using sub-template: /templates/forms/_address.html
1787568512.83030Using sub-template: /templates/forms/_personal_details.html
1787568512.83030Using sub-template: /templates/forms/_address.html
1787568512.83040Using sub-template: /templates/forms/_data_protection.html
1787568512.83040Using sub-template: /templates/forms/_personal_details.html
1787568512.83050 [2] Using sub-template: /templates/forms/_data_protection.html
1787568512.8340.0036 [1] SELECT * FROM swt_categories ORDER BY catTreePosition ASC
1787568512.83720.0032 [162] SELECT catID, catPath FROM swt_categories
1787568512.83850.0013 [250] SELECT country, countryID FROM swt_shop_countries WHERE countryActive=1 ORDER BY country ASC
1787568512.84010.0016Using template: /templates/pages/attributes/seo.html
1787568512.84040.0002 [nil] SELECT regionID, regionTemplate, regionPage, regionRev AS rev FROM swt_content_regions WHERE regionKey='Banner image' AND (regionPage='/discover/in-your-garden/article' OR regionPage='*')
1787568512.84110.0008No matching content regions found. Check region name (Banner image) and page path options.
1787568512.84120 [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 IS NULL AND idx.itemID=idx2.itemID AND idx.itemRev=idx2.itemRev ) as tbl GROUP BY itemID, pageID, itemJSON, sortval, regionID ORDER BY sortval ASC
1787568512.84190.0007 [82] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageDepth >=0 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1787568512.84490.003 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/discover/in-your-garden/article' LIMIT 1
1787568512.84540.0005 [4] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-003-003-001-002', '000-003-003-001', '000-003-003', '000-003', '000') ORDER BY pageTreePosition DESC
1787568512.84760.0022Using template: /templates/navigation/ps_nav_template.html
1787568512.84770 [6] Using template: /templates/navigation/ps_nav_template_children.html
1787568512.84840.0008 [4] Using template: /templates/navigation/ps_nav_template_children.html
1787568512.84890.0004 [29] Using template: /templates/navigation/ps_nav_template_children.html
1787568512.85160.0027 [10] Using template: /templates/navigation/ps_nav_template_children.html
1787568512.85260.001 [7] Using template: /templates/navigation/ps_nav_template_children.html
1787568512.85330.0007 [9] Using template: /templates/navigation/ps_nav_template_children.html
1787568512.85570.0024 [0] SELECT setID FROM swt_category_sets WHERE setSlug='' LIMIT 1
1787568512.85630.0006 [1] SELECT main.* FROM swt_categories main WHERE 1=1 AND (catPath='wildcall/ponds/') ORDER BY catTreePosition ASC
1787568512.85710.0008 [1] Using template: /templates/categories/wildcall_banner.html
1787568512.85890.0018 [1] SELECT * FROM ( SELECT idx.itemID, ci.collectionID, ci.itemJSON, idx2.indexValue as sortval FROM swt_collection_index idx JOIN swt_collection_items ci ON idx.itemID=ci.itemID AND idx.itemRev=ci.itemRev AND idx.collectionID=ci.collectionID JOIN swt_collection_revisions cr ON idx.itemID=cr.itemID AND idx.itemRev=cr.itemRev AND idx.collectionID=ci.collectionID JOIN swt_collection_index idx2 ON idx.itemID=idx2.itemID AND idx.itemRev=idx2.itemRev AND idx2.indexKey='_order' WHERE (idx.collectionID=5) AND ((idx.indexKey='_id' AND idx.indexValue=133)) AND idx.itemID=idx2.itemID AND idx.itemRev=idx2.itemRev ) as tbl GROUP BY itemID, itemJSON, sortval ORDER BY sortval ASC
1787568512.86330.0045Using template: /templates/content/wildcall.html
1787568512.86350.0001 [1] Using sub-template: /templates/content/mixed_content.html
1787568512.86360.0001Using sub-template: /templates/content/text_block.html
1787568512.86360Using sub-template: /templates/content/thumbnails.html
1787568512.86360Using sub-template: /templates/content/image.html
1787568512.86370Using sub-template: /templates/content/gallery.html
1787568512.86370Using sub-template: /templates/content/video.html
1787568512.86370Using sub-template: /templates/content/ask_inline.html
1787568512.86380Using sub-template: /templates/content/legacy_request_form.html
1787568512.86380Using sub-template: /templates/content/image.html
1787568512.86380Using sub-template: /templates/content/code_block.html
1787568512.86380Using sub-template: /templates/content/customisable_donate_form.html
1787568512.86390Using sub-template: /templates/content/contact_form.html
1787568512.8640.0001Using sub-template: /templates/forms/details.html
1787568512.8640Using sub-template: /templates/forms/_data_protection.html
1787568512.8640.0001Using sub-template: /templates/forms/_personal_details.html
1787568512.86410.0001Using sub-template: /templates/forms/_address.html
1787568512.86410Using sub-template: /templates/forms/_personal_details.html
1787568512.86420Using sub-template: /templates/forms/_address.html
1787568512.86420Using sub-template: /templates/forms/_data_protection.html
1787568512.86420Using sub-template: /templates/forms/_personal_details.html
1787568512.86430 [2] Using sub-template: /templates/forms/_data_protection.html
1787568512.86710.0029 [1] SELECT * FROM swt_categories ORDER BY catTreePosition ASC
1787568512.870.0029 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/what-we-do' OR pageSortPath='/what-we-do' LIMIT 1
1787568512.8710.001 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-002' LIMIT 1
1787568512.87170.0007 [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
1787568512.87530.0036 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/discover/in-your-garden/article' LIMIT 1
1787568512.87580.0005 [4] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-003-003-001-002', '000-003-003-001', '000-003-003', '000-003', '000') ORDER BY pageTreePosition DESC
1787568512.87850.0027 [6] Using template: /templates/navigation/footer-nav.html
1787568512.87950.0009 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1787568512.88050.001 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1787568512.8810.0005 [38] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-005%' ORDER BY pageTreePosition ASC
1787568512.88370.0027 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/discover/in-your-garden/article' LIMIT 1
1787568512.88510.0014 [4] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-003-003-001-002', '000-003-003-001', '000-003-003', '000-003', '000') ORDER BY pageTreePosition DESC
1787568512.88730.0022 [10] Using template: /templates/navigation/footer-nav.html
1787568512.89040.0031 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/visit' OR pageSortPath='/visit' LIMIT 1
1787568512.89230.002 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-004' LIMIT 1
1787568512.89290.0006 [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
1787568512.89670.0038 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/discover/in-your-garden/article' LIMIT 1
1787568512.89730.0006 [4] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-003-003-001-002', '000-003-003-001', '000-003-003', '000-003', '000') ORDER BY pageTreePosition DESC
1787568512.89930.0021 [29] Using template: /templates/navigation/footer-nav.html
1787568512.90180.0024 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1787568512.90230.0006 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1787568512.90280.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
1787568512.9050.0022 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/discover/in-your-garden/article' LIMIT 1
1787568512.91050.0055 [4] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-003-003-001-002', '000-003-003-001', '000-003-003', '000-003', '000') ORDER BY pageTreePosition DESC
1787568512.91280.0024 [10] Using template: /templates/navigation/footer-nav.html
1787568512.9140.0012Request time: 0.1938
1787568512.9140Process time: 0.1936
1787568512.9140Memory: 1.8061