Spot the difference - the seals of Rye Harbour

, 26 July 2024
Spot the difference - the seals of Rye Harbour
Common Seal © Hugh Clarke FRPS

By Laura Ross

Communications Officer, Rye Harbour Nature Reserve

Despite an increasing presence at the nature reserve, it’s always a treat to spot the shiny, bobbing head of a seal. Often, they disappear in the blink of an eye, so it’s handy to have a few pointers to help distinguish between the two species found at Rye Harbour; the Common (or Harbour) Seal and the Grey Seal.

Shape of the head

If you’re lucky enough to spot a seal in profile, the Grey Seal has a longer, flatter ‘roman’ nose, with parallel nostrils and eyes on the side of their head. 

Grey Seal
Grey Seal © Dave Kilbey

Common Seal have a more rounded puppy-like face, with v-shaped nostrils, a defined forehead and large eyes with a frontal position.

Common Seal
Common Seal © Barry Yates

Colour

The Grey Seal is unsurprisingly mainly grey in colour, with a mottled pattern of dark and pale blotches on its coat. Common Seal can vary greatly from a silvery tan through to a near-black colour with more uniform spots.

Common Seal
Common Seal © Katherine Crowther

Body size

Sometimes you’ll be fortunate to catch them hauled out on the shore at Camber Sands opposite the river mouth. Grey Seal are much bigger, often over 2 metres long in comparison to Common Seal at around 1.3 to 1.7 metres.

Movement on land

Grey Seal adopt a bouncing technique, whereas Harbour Seal tend to move from a resting banana shape to a wriggling, caterpillar motion.

Harbour Seal
Common Seal © Claire Andrews



The local seals get a mention in the book Shingle Shore, by Barry Yates and SC Morgan, with a reminder of the special connection we have with them: 'They are as curious as we are, and will often turn to look as you walk by. Old stories tell of fishermen calling seals to them by whistling'. Next time you happen to see one, give it a try and let us know if they look up!

Leave a comment

Comments

  • Dee Swan:

    I have often been swimming at Winchelsea beach when the Grey Seal pops his/her head up. Very inquisitive and seems enjoy the company, often staying around for the duration of our swim.

    08 Aug 2024 12:08:00

  • Christine Randell:

    Thank you most interesting

    08 Aug 2024 12:51:00

  • Rosemary:

    My friend recently saw half a dozen seals resting on the bank leading up to the harbour. We enjoyed reading your article.

    08 Aug 2024 16:45:00

  • Chris Arulraj:

    that was really interesting, and I now look forward to seeing some seals in the wild and seeing if i can identify them. I love these short info + photos, they are clear and helpful – keep them coming. thanks

    09 Aug 2024 09:33:00

  • Lesley Taylor:

    We had a fantastic seal encounter at Rye Harbour last Sunday. Up to 10 seals up on the sand bank. I was told that they were a mixed group and have enjoyed going through my photos to ‘spot the difference’.

    11 Aug 2024 11:55:00

  • Jo campbell:

    Thank you for this guide, its very helpful. We often see a solitary seal in the river mouth. It’s very inquisitive, particularly if we’re walking our dog. Our dog can smell its presence but can’t see it 😏

    14 Aug 2024 07:16:00

  • Sussex Wildlife Trust:

    Hi Jo,

    We're glad to hear you found it useful. And funny that your dog is aware of them too!

Time Δ Debug Message - Perch Runway 3.2
1782675423.76110 [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
1782675423.79170.0306Matched route: news/[slug:s]
1782675423.79190.0002Server address: 216.73.216.31
1782675423.79190.0001Using master page: /templates/pages/blog/post.php
1782675423.79190Page arguments:
Array
(
    [0] => /news/spot-the-difference-the-seals-of-rye-harbour
    [s] => spot-the-difference-the-seals-of-rye-harbour
    [1] => spot-the-difference-the-seals-of-rye-harbour
)
1782675423.79230.0004 [1] SELECT * FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782675423.79350.0011 [86] SELECT DISTINCT settingID, settingValue FROM swt_settings WHERE userID=0
1782675423.79650.0031 [1] SELECT locationID FROM swt_shop_tax_locations WHERE locationIsHome=1 LIMIT 1
1782675423.79720.0007INSERT INTO swt_shop_cart(memberID,locationID,currencyID,cartPricing,cartProperties) VALUES(NULL,'1',47,'standard','[]')
1782675423.82270.0255 [1] SELECT * FROM swt_shop_cart WHERE cartID=22393411
1782675423.82450.0018 [1] SELECT * FROM swt_shop_cart WHERE cartID=22393411
1782675423.82520.0007 [nil] SELECT * FROM swt_shop_sales WHERE saleFrom<='2026-06-28 19:37:00' AND saleTo>'2026-06-28 19:37:00' AND saleActive=1 AND saleDeleted IS NULL ORDER BY saleOrder ASC
1782675423.82710.0019 [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='spot-the-difference-the-seals-of-rye-harbour')) 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-06-28 19:37:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 10
1782675423.82950.0024 [1] SELECT FOUND_ROWS() AS `count`
1782675423.83010.0006 [1] SELECT * FROM swt_blog_posts WHERE postID=3467 AND postStatus='Published' AND postDateTime<='2026-06-28 19:37:00'
1782675423.8310.0009 [13] SELECT * FROM swt_blog_sections ORDER BY sectionTitle ASC
1782675423.83180.0009 [1] SELECT * FROM swt_blogs ORDER BY blogTitle ASC
1782675423.83250.0007 [1] SELECT * FROM swt_categories WHERE catID=251 LIMIT 1
1782675423.8330.0006 [1] SELECT * FROM swt_categories WHERE catID=70 LIMIT 1
1782675423.83370.0007Using template: /templates/blog/post.html
1782675423.83430.0006 [162] SELECT catID, catPath FROM swt_categories
1782675423.83520.0009 [1] SELECT * FROM swt_blog_posts WHERE postStatus='Published' AND postDateTime<='2026-06-28 19:37:00' AND postSlug='spot-the-difference-the-seals-of-rye-harbour'
1782675423.85670.0215Using template: /templates/blog/post.html
1782675423.85730.0006 [250] SELECT country, countryID FROM swt_shop_countries WHERE countryActive=1 ORDER BY country ASC
1782675423.8670.0097Using template: /templates/pages/attributes/seo.html
1782675423.86730.0002 [1] SELECT regionID, regionTemplate, regionPage, regionRev AS rev FROM swt_content_regions WHERE regionKey='Banner image' AND (regionPage='/news/post' OR regionPage='*')
1782675423.86820.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
1782675423.86960.0015 [82] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageDepth >=0 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1782675423.87270.003 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782675423.87380.0011 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782675423.87590.0021Using template: /templates/navigation/ps_nav_template.html
1782675423.87590.0001 [6] Using template: /templates/navigation/ps_nav_template_children.html
1782675423.87780.0018 [4] Using template: /templates/navigation/ps_nav_template_children.html
1782675423.8790.0013 [29] Using template: /templates/navigation/ps_nav_template_children.html
1782675423.88260.0036 [10] Using template: /templates/navigation/ps_nav_template_children.html
1782675423.88360.001 [7] Using template: /templates/navigation/ps_nav_template_children.html
1782675423.89030.0067 [9] Using template: /templates/navigation/ps_nav_template_children.html
1782675423.89320.0029 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' OR pageSortPath='/news/post' LIMIT 1
1782675423.89420.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
1782675423.89630.0022 [1] Using template: /templates/navigation/breadcrumbs.html
1782675423.89690.0005Using template: /templates/blog/post.html
1782675423.89710.0003 [1] SELECT * FROM swt_blog_authors WHERE authorID='28' LIMIT 1
1782675423.89780.0007Using template: /templates/blog/author.html
1782675423.89810.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='spot-the-difference-the-seals-of-rye-harbour')) 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-06-28 19:37:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 1
1782675423.90010.0019 [1] SELECT FOUND_ROWS() AS `count`
1782675423.90040.0004 [1] Using template: /templates/blog/post.html
1782675423.90390.0035Using template: /templates/blog/comment_form.html
1782675423.90480.0009 [6] SELECT * FROM swt_blog_comments WHERE 1=1 AND postID=3467 AND commentStatus='LIVE' ORDER BY FIELD(webmentionType, 'like', 'repost', 'comment', NULL) ASC, commentDateTime ASC
1782675424.00160.0968 [6] Using template: /templates/blog/comment.html
1782675424.00350.0019Using template: /templates/blog/post.html
1782675424.00370.0002 [1] SELECT * FROM swt_blog_authors WHERE authorID='28' LIMIT 1
1782675424.00880.0051 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/what-we-do' OR pageSortPath='/what-we-do' LIMIT 1
1782675424.00970.0009 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-002' LIMIT 1
1782675424.01020.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
1782675424.01230.002 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782675424.01270.0004 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782675424.01570.003 [6] Using template: /templates/navigation/footer-nav.html
1782675424.01650.0008 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1782675424.01750.001 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1782675424.0180.0005 [38] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-005%' ORDER BY pageTreePosition ASC
1782675424.02020.0023 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782675424.02070.0004 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782675424.0240.0033 [10] Using template: /templates/navigation/footer-nav.html
1782675424.02750.0036 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/visit' OR pageSortPath='/visit' LIMIT 1
1782675424.02830.0008 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-004' LIMIT 1
1782675424.02880.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
1782675424.0310.0022 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782675424.03160.0005 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782675424.03490.0033 [29] Using template: /templates/navigation/footer-nav.html
1782675424.03660.0018 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1782675424.03710.0005 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1782675424.03750.0004 [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
1782675424.03950.002 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782675424.040.0005 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782675424.04180.0018 [10] Using template: /templates/navigation/footer-nav.html
1782675424.04310.0012Request time: 0.2836
1782675424.04310Process time: 0.2834
1782675424.04310Memory: 1.6248