diff --git a/lib/src/command_processor.dart b/lib/src/command_processor.dart
index 422ebbf..97f42f8 100644
--- a/lib/src/command_processor.dart
+++ b/lib/src/command_processor.dart
@@ -63,7 +63,7 @@
         }
         return req.close();
       }).then((HttpClientResponse rsp) {
-        return rsp.transform(new StringDecoder())
+        return rsp.transform(new Utf8Decoder())
             .fold(new StringBuffer(), (buffer, data) => buffer..write(data))
             .then((StringBuffer buffer) {
               // For some reason we get a bunch of NULs on the end
diff --git a/lib/src/web_driver.dart b/lib/src/web_driver.dart
index cb68342..8cb9b76 100644
--- a/lib/src/web_driver.dart
+++ b/lib/src/web_driver.dart
@@ -31,7 +31,7 @@
         return Uri.parse(rsp.headers.value(HttpHeaders.LOCATION));
       }
 
-      return rsp.transform(new StringDecoder())
+      return rsp.transform(new Utf8Decoder())
           .fold(new StringBuffer(), (buffer, data) => buffer..write(data))
           .then((StringBuffer buffer) {
             // Strip NULs that WebDriver seems to include in some responses.
diff --git a/lib/webdriver.dart b/lib/webdriver.dart
index 889f64a..bc41a70 100644
--- a/lib/webdriver.dart
+++ b/lib/webdriver.dart
@@ -5,6 +5,7 @@
 library webdriver;
 
 import 'dart:async';
+import 'dart:convert';
 import 'dart:io';
 import 'dart:json' as json;
 import 'dart:utf' as utf;
