diff --git a/changelog.md b/changelog.md
index 2f01cb2..d9034de 100644
--- a/changelog.md
+++ b/changelog.md
@@ -1,5 +1,8 @@
 # Changelog
 
+## 2.2.1
+- improve the user agent string for the CLI client
+
 ## 2.2.0+1
 - bug fix to prevent frequently changing the settings file
 
diff --git a/lib/src/usage_impl_io.dart b/lib/src/usage_impl_io.dart
index 2bb7efa..fff224a 100644
--- a/lib/src/usage_impl_io.dart
+++ b/lib/src/usage_impl_io.dart
@@ -39,11 +39,19 @@
 }
 
 String _createUserAgent() {
-  // Mozilla/5.0 (iPhone; U; CPU iPhone OS 5_1_1 like Mac OS X; en)
-  // Dart/1.8.0-edge.41170 (macos; macos; macos; null)
-  String os = Platform.operatingSystem;
-  String locale = Platform.environment['LANG'];
-  return "Dart/${_dartVersion()} (${os}; ${os}; ${os}; ${locale})";
+  if (Platform.isMacOS) {
+    return 'Mozilla/5.0 (Macintosh; Intel Mac OS X)';
+  } else if (Platform.isMacOS) {
+    return 'Mozilla/5.0 (Windows; Windows)';
+  } else if (Platform.isLinux) {
+    return 'Mozilla/5.0 (Linux; Linux)';
+  } else {
+    // Mozilla/5.0 (iPhone; U; CPU iPhone OS 5_1_1 like Mac OS X; en)
+    // Dart/1.8.0-edge.41170 (macos; macos; macos; null)
+    String os = Platform.operatingSystem;
+    String locale = Platform.environment['LANG'];
+    return "Dart/${_dartVersion()} (${os}; ${os}; ${os}; ${locale})";
+  }
 }
 
 String _userHomeDir() {
diff --git a/pubspec.yaml b/pubspec.yaml
index e3a323b..5f55f75 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -3,7 +3,7 @@
 # BSD-style license that can be found in the LICENSE file.
 
 name: usage
-version: 2.2.0+1
+version: 2.2.1
 description: A Google Analytics wrapper for both command-line, web, and Flutter apps.
 homepage: https://github.com/dart-lang/usage
 author: Dart Team <misc@dartlang.org>
diff --git a/test/usage_impl_io_test.dart b/test/usage_impl_io_test.dart
index e41f241..31e8ac8 100644
--- a/test/usage_impl_io_test.dart
+++ b/test/usage_impl_io_test.dart
@@ -68,7 +68,7 @@
 class MockHttpClientResponse implements HttpClientResponse {
   final MockHttpClient client;
   MockHttpClientResponse(this.client);
-  Future drain([var futureValue]) {
+  Future/*<E>*/ drain/*<E>*/([/*=E*/ futureValue]) {
     client.sendCount++;
     return new Future.value();
   }
