diff --git a/src/components/destroy-at-extreme-distances.js b/src/components/destroy-at-extreme-distances.js
new file mode 100644
index 0000000000000000000000000000000000000000..2660c3ce98aa227415a6a075a81692628eda417d
--- /dev/null
+++ b/src/components/destroy-at-extreme-distances.js
@@ -0,0 +1,21 @@
+AFRAME.registerComponent("destroy-at-extreme-distances", {
+  schema: {
+    xMin: { default: -1000 },
+    xMax: { default: 1000 },
+    yMin: { default: -1000 },
+    yMax: { default: 1000 },
+    zMin: { default: -1000 },
+    zMax: { default: 1000 }
+  },
+
+  tick: (function() {
+    const pos = new THREE.Vector3();
+    return function() {
+      const { xMin, xMax, yMin, yMax, zMin, zMax } = this.data;
+      this.el.object3D.getWorldPosition(pos);
+      if (pos.x < xMin || pos.x > xMax || pos.y < yMin || pos.y > yMax || pos.z < zMin || pos.z > zMax) {
+        this.el.parentNode.removeChild(this.el);
+      }
+    };
+  })()
+});
diff --git a/src/hub.html b/src/hub.html
index 3438ab9a046581e9e5f940e25a98ede7ff88bb91..3a649ad3c2f3082ed57b4b61e265acb943d4dd9f 100644
--- a/src/hub.html
+++ b/src/hub.html
@@ -187,6 +187,7 @@
                     auto-box-collider
                     position-at-box-shape-border="target:.delete-button"
                     auto-scale-cannon-physics-body
+                    destroy-at-extreme-distances
                 >
                     <a-entity class="delete-button" visible-while-frozen scale="0.08 0.08 0.08">
                         <a-entity mixin="rounded-text-button" remove-object-button position="0 0 0"> </a-entity>
@@ -208,6 +209,7 @@
                     image-plus
                     sticky-object="autoLockOnLoad: true; autoLockOnRelease: true;"
                     position-at-box-shape-border="target:.delete-button;dirs:forward,back"
+                    destroy-at-extreme-distances
                 >
                     <a-entity class="delete-button" visible-while-frozen>
                         <a-entity mixin="rounded-text-button" remove-networked-object-button position="0 0 0"> </a-entity>
diff --git a/src/hub.js b/src/hub.js
index fa21149111a673f2390b7acc6b33eaeb3dbfa840..123af93bfec23e1d828d51419b1d963e17e30bbd 100644
--- a/src/hub.js
+++ b/src/hub.js
@@ -73,6 +73,7 @@ import "./components/sticky-object";
 import "./components/auto-scale-cannon-physics-body";
 import "./components/position-at-box-shape-border";
 import "./components/remove-networked-object-button";
+import "./components/destroy-at-extreme-distances";
 
 import ReactDOM from "react-dom";
 import React from "react";