diff --git a/mods/stairs/init.lua b/mods/stairs/init.lua
index 90172ef0..7c6d3823 100644
--- a/mods/stairs/init.lua
+++ b/mods/stairs/init.lua
@@ -108,6 +108,15 @@ function stairs.register_stair(subname, recipeitem, groups, images, description,
 			},
 		})
 
+		-- Use stairs to craft full blocks again (1:1)
+		minetest.register_craft({
+			output = recipeitem .. ' 3',
+			recipe = {
+				{'stairs:stair_' .. subname, 'stairs:stair_' .. subname},
+				{'stairs:stair_' .. subname, 'stairs:stair_' .. subname},
+			},
+		})
+
 		-- Fuel
 		local baseburntime = minetest.get_craft_result({
 			method = "fuel",
@@ -216,6 +225,15 @@ function stairs.register_slab(subname, recipeitem, groups, images, description,
 			},
 		})
 
+		-- Use 2 slabs to craft a full block again (1:1)
+		minetest.register_craft({
+			output = recipeitem,
+			recipe = {
+				{'stairs:slab_' .. subname},
+				{'stairs:slab_' .. subname},
+			},
+		})
+
 		-- Fuel
 		local baseburntime = minetest.get_craft_result({
 			method = "fuel",