Species of the Day: Lipped Snails

, 03 April 2020
Species of the Day: Lipped Snails
White-lipped Snail © James Duncan

By James Duncan

Learning and Engagement Officer

There are a couple of species of Lipped Snails commonly found in Britain - they're cleverly named Brown (Cepaea nemoralis) and White-lipped (Cepaea hortensis) according to the colour of the band closest to the opening (or aperture) of the shell. Of course, in nature, things are rarely clear cut and it's not impossible that either species may have the opposite lip colour. General wear and tear to the shell may also make identification difficult. Both species are a type of land-based invertebrate known as a Gastropod, comprising both slugs and snails. This translates to an animal that essentially has its stomach and foot contained within the same body part. They may have a reputation as slow, slimy and somewhat distasteful but its worth remembering that Gastropods are one of the very few animals that have managed to conquer both land, sea and fresh water. 

To add to the ID challenge, these snails exhibit a huge amount of diversity to both their colour and patterning - this is known as polymorphism. In fact, these snails were used in early genetic studies on natural selection which continues to be researched even now. The morphology of the shells varies according to a number of external factors driving natural selection - predation, habitat type and climate. One of the top predators of the Lipped-snails is the Song Thrush, whose visual perception of the camouflage is pivotal as to which snails survive to pass on their genes. 

These snails (like most) are hermaphrodites, containing both male and female sex organs. This doesn't mean they have no requirement to mate, sexual reproduction is a requirement in the Lipped snails. Unfortunately for them, it's a long, tortuous and possibly painful process. During the courtship and prior to mating, they employ a 'love dart.' Now this isn't quite as romantic as it seems as it's essentially a weapon, used to pierce the skin of the other snail. The dart itself is a sharp, mucus coated calcareous object which unites the snails prior to copulation. Essentially it's a 'stabbing' with hormones to try and increase the chance of successful reproduction. Unfortunately there's no organ to receive such a thing and injury is a distinct possibility.  

Lipped snail2

White-lipped Snails © James Duncan

Leave a comment
Time Δ Debug Message - Perch Runway 3.2
1783240435.28050 [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
1783240435.30580.0253Matched route: news/[slug:s]
1783240435.3060.0002Server address: 216.73.216.170
1783240435.3060Using master page: /templates/pages/blog/post.php
1783240435.3060Page arguments:
Array
(
    [0] => /news/species-of-the-day-lipped-snails
    [s] => species-of-the-day-lipped-snails
    [1] => species-of-the-day-lipped-snails
)
1783240435.30630.0003 [1] SELECT * FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783240435.30730.001 [86] SELECT DISTINCT settingID, settingValue FROM swt_settings WHERE userID=0
1783240435.30910.0018 [1] SELECT locationID FROM swt_shop_tax_locations WHERE locationIsHome=1 LIMIT 1
1783240435.30960.0005INSERT INTO swt_shop_cart(memberID,locationID,currencyID,cartPricing,cartProperties) VALUES(NULL,'1',47,'standard','[]')
1783240435.31160.002 [1] SELECT * FROM swt_shop_cart WHERE cartID=22644510
1783240435.31210.0005 [1] SELECT * FROM swt_shop_cart WHERE cartID=22644510
1783240435.31290.0007 [nil] SELECT * FROM swt_shop_sales WHERE saleFrom<='2026-07-05 08:33:00' AND saleTo>'2026-07-05 08:33:00' AND saleActive=1 AND saleDeleted IS NULL ORDER BY saleOrder ASC
1783240435.3140.0012 [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='species-of-the-day-lipped-snails')) 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-05 08:33:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 10
1783240435.31590.0019 [1] SELECT FOUND_ROWS() AS `count`
1783240435.31650.0006 [1] SELECT * FROM swt_blog_posts WHERE postID=2040 AND postStatus='Published' AND postDateTime<='2026-07-05 08:33:00'
1783240435.31730.0009 [13] SELECT * FROM swt_blog_sections ORDER BY sectionTitle ASC
1783240435.31820.0008 [1] SELECT * FROM swt_blogs ORDER BY blogTitle ASC
1783240435.31890.0008 [1] SELECT * FROM swt_categories WHERE catID=191 LIMIT 1
1783240435.31960.0006 [1] SELECT * FROM swt_categories WHERE catID=36 LIMIT 1
1783240435.32030.0007Using template: /templates/blog/post.html
1783240435.32050.0002 [162] SELECT catID, catPath FROM swt_categories
1783240435.32150.0009 [1] SELECT * FROM swt_blog_posts WHERE postStatus='Published' AND postDateTime<='2026-07-05 08:33:00' AND postSlug='species-of-the-day-lipped-snails'
1783240435.3420.0206Using template: /templates/blog/post.html
1783240435.34260.0006 [250] SELECT country, countryID FROM swt_shop_countries WHERE countryActive=1 ORDER BY country ASC
1783240435.34420.0016Using template: /templates/pages/attributes/seo.html
1783240435.34450.0003 [1] SELECT regionID, regionTemplate, regionPage, regionRev AS rev FROM swt_content_regions WHERE regionKey='Banner image' AND (regionPage='/news/post' OR regionPage='*')
1783240435.34520.0007 [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
1783240435.34660.0014 [82] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageDepth >=0 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1783240435.34950.0029 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783240435.35030.0008 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783240435.35240.0021Using template: /templates/navigation/ps_nav_template.html
1783240435.35240.0001 [6] Using template: /templates/navigation/ps_nav_template_children.html
1783240435.35330.0008 [4] Using template: /templates/navigation/ps_nav_template_children.html
1783240435.35380.0005 [29] Using template: /templates/navigation/ps_nav_template_children.html
1783240435.35640.0026 [10] Using template: /templates/navigation/ps_nav_template_children.html
1783240435.35740.001 [7] Using template: /templates/navigation/ps_nav_template_children.html
1783240435.35820.0008 [9] Using template: /templates/navigation/ps_nav_template_children.html
1783240435.36130.0031 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' OR pageSortPath='/news/post' LIMIT 1
1783240435.36220.0009 [1] SELECT * FROM swt_pages_staging WHERE pageHidden=0 AND pageNew=0 AND pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition
1783240435.36420.0021 [1] Using template: /templates/navigation/breadcrumbs.html
1783240435.36480.0006Using template: /templates/blog/post.html
1783240435.36510.0003 [1] SELECT * FROM swt_blog_authors WHERE authorID='20' LIMIT 1
1783240435.36580.0007Using template: /templates/blog/author.html
1783240435.36620.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='species-of-the-day-lipped-snails')) 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-05 08:33:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 1
1783240435.36820.002 [1] SELECT FOUND_ROWS() AS `count`
1783240435.36870.0005 [1] Using template: /templates/blog/post.html
1783240435.37140.0027Using template: /templates/blog/comment_form.html
1783240435.37250.0011 [nil] SELECT * FROM swt_blog_comments WHERE 1=1 AND postID=2040 AND commentStatus='LIVE' ORDER BY FIELD(webmentionType, 'like', 'repost', 'comment', NULL) ASC, commentDateTime ASC
1783240435.42030.0478 [0] Using template: /templates/blog/comment.html
1783240435.42050.0002Using template: /templates/blog/post.html
1783240435.42070.0002 [1] SELECT * FROM swt_blog_authors WHERE authorID='20' LIMIT 1
1783240435.42150.0008 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/what-we-do' OR pageSortPath='/what-we-do' LIMIT 1
1783240435.42220.0007 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-002' LIMIT 1
1783240435.42290.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
1783240435.42480.0019 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783240435.42540.0005 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783240435.42720.0018 [6] Using template: /templates/navigation/footer-nav.html
1783240435.42840.0011 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1783240435.4290.0006 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1783240435.42950.0005 [38] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-005%' ORDER BY pageTreePosition ASC
1783240435.43170.0022 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783240435.43240.0006 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783240435.43410.0018 [10] Using template: /templates/navigation/footer-nav.html
1783240435.43760.0035 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/visit' OR pageSortPath='/visit' LIMIT 1
1783240435.43820.0006 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-004' LIMIT 1
1783240435.43870.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
1783240435.44080.0021 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783240435.44120.0004 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783240435.4430.0017 [29] Using template: /templates/navigation/footer-nav.html
1783240435.44570.0027 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1783240435.44640.0007 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1783240435.44690.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
1783240435.44870.0019 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1783240435.44930.0005 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1783240435.45110.0018 [10] Using template: /templates/navigation/footer-nav.html
1783240435.45250.0014Request time: 0.1747
1783240435.45260Process time: 0.1744
1783240435.45260Memory: 1.6238