diff --git a/src/virtual-machine.js b/src/virtual-machine.js
index 79c16d2fc..adbeba640 100644
--- a/src/virtual-machine.js
+++ b/src/virtual-machine.js
@@ -329,9 +329,8 @@ class VirtualMachine extends EventEmitter {
             }
             if (newName && RESERVED_NAMES.indexOf(newName) === -1) {
                 const names = this.runtime.targets
-                    .filter(runtimeTarget => runtimeTarget.isSprite())
+                    .filter(runtimeTarget => runtimeTarget.isSprite() && runtimeTarget.id !== target.id)
                     .map(runtimeTarget => runtimeTarget.sprite.name);
-
                 sprite.name = StringUtil.unusedName(newName, names);
             }
             this.emitTargetsUpdate();
diff --git a/test/unit/virtual-machine.js b/test/unit/virtual-machine.js
index 73cefb8a2..37a62ff69 100644
--- a/test/unit/virtual-machine.js
+++ b/test/unit/virtual-machine.js
@@ -94,3 +94,18 @@ test('renameSprite increments from existing sprite names', t => {
     t.equal(vm.runtime.targets[0].sprite.name, 'that name2');
     t.end();
 });
+
+test('renameSprite does not increment when renaming to the same name', t => {
+    const vm = new VirtualMachine();
+    vm.emitTargetsUpdate = () => {};
+    vm.runtime.targets = [{
+        id: 'id1',
+        isSprite: () => true,
+        sprite: {
+            name: 'this name'
+        }
+    }];
+    vm.renameSprite('id1', 'this name');
+    t.equal(vm.runtime.targets[0].sprite.name, 'this name');
+    t.end();
+});