Dirty business? Let's make a wave of change

, 05 March 2026
Dirty business? Let's make a wave of change
Dirty Business promotional image © Channel 4

If you’ve watched Dirty Business, Channel 4’s dramatised documentary on the sewage scandal, you might be feeling a mixture of despair, fury, frustration and outrage. We certainly are. Work has been underway for decades to clean up our rivers, lakes, beaches and the sea but we’re still not seeing improvements at the pace our environment needs.

We are now at a critical moment. A new water law is coming and the strength of public feeling in response to this powerful TV series could be the tipping point so desperately needed to secure an overhaul of the water system that will finally address its failings.

It all rests on the Water Reform Bill. The Government has promised once-in-a-generation change but so far has not delivered ambitious enough commitments. We must make sure the Government delivers a new water law that:

Stops the polluters
By clamping down on sewage, restricting intensive agriculture and banning toxic chemical pollution

Fixes the broken system
By stopping water companies putting profit before people and nature

Restores nature 
By bringing our rivers, lakes, beaches and the sea back to life with cleaner water, healthier habitats and safe access

You can help make this happen.

Please join us (and more than 40 other organisations) to demand Clean Water Now. Email your MP today and demand a new water law that stops polluters, fixes what’s broken and delivers clean water – now. 

Our partners, Friends of the Earth, have made it easy to email your MP, so please take action today.

Email your MP to demand clean water now


Want to know more? Read the Clean Water Now report

Leave a comment
Time Δ Debug Message - Perch Runway 3.2
1782502768.36220 [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
1782502768.38810.0259Matched route: news/[slug:s]
1782502768.38820.0001Server address: 216.73.217.174
1782502768.38820Using master page: /templates/pages/blog/post.php
1782502768.38820Page arguments:
Array
(
    [0] => /news/dirty-business-lets-make-a-wave-of-change
    [s] => dirty-business-lets-make-a-wave-of-change
    [1] => dirty-business-lets-make-a-wave-of-change
)
1782502768.38860.0003 [1] SELECT * FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782502768.38970.0012 [86] SELECT DISTINCT settingID, settingValue FROM swt_settings WHERE userID=0
1782502768.39180.0021 [1] SELECT locationID FROM swt_shop_tax_locations WHERE locationIsHome=1 LIMIT 1
1782502768.39240.0006INSERT INTO swt_shop_cart(memberID,locationID,currencyID,cartPricing,cartProperties) VALUES(NULL,'1',47,'standard','[]')
1782502768.39470.0023 [1] SELECT * FROM swt_shop_cart WHERE cartID=22322772
1782502768.39530.0006 [1] SELECT * FROM swt_shop_cart WHERE cartID=22322772
1782502768.39590.0006 [nil] SELECT * FROM swt_shop_sales WHERE saleFrom<='2026-06-26 19:39:00' AND saleTo>'2026-06-26 19:39:00' AND saleActive=1 AND saleDeleted IS NULL ORDER BY saleOrder ASC
1782502768.39730.0014 [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='dirty-business-lets-make-a-wave-of-change')) 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-26 19:39:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 10
1782502768.40030.003 [1] SELECT FOUND_ROWS() AS `count`
1782502768.40090.0007 [1] SELECT * FROM swt_blog_posts WHERE postID=3895 AND postStatus='Published' AND postDateTime<='2026-06-26 19:39:00'
1782502768.40190.001 [13] SELECT * FROM swt_blog_sections ORDER BY sectionTitle ASC
1782502768.40270.0007 [1] SELECT * FROM swt_blogs ORDER BY blogTitle ASC
1782502768.40340.0008Using template: /templates/blog/post.html
1782502768.40370.0003 [1] SELECT * FROM swt_blog_posts WHERE postStatus='Published' AND postDateTime<='2026-06-26 19:39:00' AND postSlug='dirty-business-lets-make-a-wave-of-change'
1782502768.42610.0224Using template: /templates/blog/post.html
1782502768.42660.0005 [250] SELECT country, countryID FROM swt_shop_countries WHERE countryActive=1 ORDER BY country ASC
1782502768.42810.0015Using template: /templates/pages/attributes/seo.html
1782502768.42830.0002 [1] SELECT regionID, regionTemplate, regionPage, regionRev AS rev FROM swt_content_regions WHERE regionKey='Banner image' AND (regionPage='/news/post' OR regionPage='*')
1782502768.42910.0008 [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
1782502768.43020.0011 [82] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageDepth >=0 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1782502768.43330.0031 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782502768.4340.0007 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782502768.43610.0021Using template: /templates/navigation/ps_nav_template.html
1782502768.43610 [6] Using template: /templates/navigation/ps_nav_template_children.html
1782502768.43680.0007 [4] Using template: /templates/navigation/ps_nav_template_children.html
1782502768.43750.0006 [29] Using template: /templates/navigation/ps_nav_template_children.html
1782502768.43940.0019 [10] Using template: /templates/navigation/ps_nav_template_children.html
1782502768.44040.001 [7] Using template: /templates/navigation/ps_nav_template_children.html
1782502768.4410.0007 [9] Using template: /templates/navigation/ps_nav_template_children.html
1782502768.44330.0023 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' OR pageSortPath='/news/post' LIMIT 1
1782502768.44410.0008 [1] SELECT * FROM swt_pages_staging WHERE pageHidden=0 AND pageNew=0 AND pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition
1782502768.44660.0025 [1] Using template: /templates/navigation/breadcrumbs.html
1782502768.44710.0005Using template: /templates/blog/post.html
1782502768.44730.0003 [1] SELECT * FROM swt_blog_authors WHERE authorID='16' LIMIT 1
1782502768.4480.0007Using template: /templates/blog/author.html
1782502768.44830.0003 [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='dirty-business-lets-make-a-wave-of-change')) 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-26 19:39:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 1
1782502768.45080.0026 [1] SELECT FOUND_ROWS() AS `count`
1782502768.45130.0005 [1] Using template: /templates/blog/post.html
1782502768.45390.0026Using template: /templates/blog/comment_form.html
1782502768.45470.0008 [nil] SELECT * FROM swt_blog_comments WHERE 1=1 AND postID=3895 AND commentStatus='LIVE' ORDER BY FIELD(webmentionType, 'like', 'repost', 'comment', NULL) ASC, commentDateTime ASC
1782502768.50780.0531 [0] Using template: /templates/blog/comment.html
1782502768.5080.0002Using template: /templates/blog/post.html
1782502768.50820.0002 [1] SELECT * FROM swt_blog_authors WHERE authorID='16' LIMIT 1
1782502768.5090.0008 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/what-we-do' OR pageSortPath='/what-we-do' LIMIT 1
1782502768.510.0011 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-002' LIMIT 1
1782502768.51060.0005 [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
1782502768.51260.002 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782502768.5130.0004 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782502768.51490.0019 [6] Using template: /templates/navigation/footer-nav.html
1782502768.51540.0005 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1782502768.5160.0006 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1782502768.51650.0005 [38] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-005%' ORDER BY pageTreePosition ASC
1782502768.51880.0023 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782502768.51940.0006 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782502768.52160.0023 [10] Using template: /templates/navigation/footer-nav.html
1782502768.52360.002 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/visit' OR pageSortPath='/visit' LIMIT 1
1782502768.52430.0006 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-004' LIMIT 1
1782502768.52470.0004 [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
1782502768.5270.0023 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782502768.52740.0004 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782502768.52940.002 [29] Using template: /templates/navigation/footer-nav.html
1782502768.53080.0014 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1782502768.53140.0006 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1782502768.53180.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
1782502768.5340.0022 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782502768.53450.0005 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782502768.53640.0019 [10] Using template: /templates/navigation/footer-nav.html
1782502768.53750.0012Request time: 0.1779
1782502768.53760Process time: 0.1778
1782502768.53760Memory: 1.6218