diff --git a/BUILD b/BUILD
index f3942aec58c4c08dca4aa3ee7e67c004d82e6c09..da572181f275cf3f8b18b4ed4701ff6678fb4918 100644
--- a/BUILD
+++ b/BUILD
@@ -42,7 +42,7 @@ g_stands_for = "gentle"
 
 core_version = "3.0.0"
 
-version = "1.3.1-pre1"
+version = "1.3.1"
 
 grpc_cc_library(
     name = "gpr",
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e940ef63c049b981eac7d612a1158fe7c807c5bf..51c272998f314bfc75da6d919885121c0a604fc6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -39,7 +39,7 @@
 cmake_minimum_required(VERSION 2.8)
 
 set(PACKAGE_NAME      "grpc")
-set(PACKAGE_VERSION   "1.3.1-pre1")
+set(PACKAGE_VERSION   "1.3.1")
 set(PACKAGE_STRING    "${PACKAGE_NAME} ${PACKAGE_VERSION}")
 set(PACKAGE_TARNAME   "${PACKAGE_NAME}-${PACKAGE_VERSION}")
 set(PACKAGE_BUGREPORT "https://github.com/grpc/grpc/issues/")
diff --git a/Makefile b/Makefile
index bc28e4ecbe187a45d1a14e4874d416b9925e450b..293a45902df9417f97ed846e7e17b7f735fc93a8 100644
--- a/Makefile
+++ b/Makefile
@@ -420,8 +420,8 @@ Q = @
 endif
 
 CORE_VERSION = 3.0.0
-CPP_VERSION = 1.3.1-pre1
-CSHARP_VERSION = 1.3.1-pre1
+CPP_VERSION = 1.3.1
+CSHARP_VERSION = 1.3.1
 
 CPPFLAGS_NO_ARCH += $(addprefix -I, $(INCLUDES)) $(addprefix -D, $(DEFINES))
 CPPFLAGS += $(CPPFLAGS_NO_ARCH) $(ARCH_FLAGS)
diff --git a/build.yaml b/build.yaml
index 8e44ea43aa7f624ad0b695ba547644671be1e4c5..14abc8284db3b8ecd9e1477d27ae791caa717984 100644
--- a/build.yaml
+++ b/build.yaml
@@ -14,7 +14,7 @@ settings:
   '#10': See the expand_version.py for all the quirks here
   core_version: 3.0.0
   g_stands_for: gentle
-  version: 1.3.1-pre1
+  version: 1.3.1
 filegroups:
 - name: census
   public_headers:
diff --git a/gRPC-Core.podspec b/gRPC-Core.podspec
index 6b70a8560b8453bfbce3ae1d80e696cd1a59e59b..561db476c29d50929170fd9c0692c31630ae1b38 100644
--- a/gRPC-Core.podspec
+++ b/gRPC-Core.podspec
@@ -37,7 +37,7 @@
 
 Pod::Spec.new do |s|
   s.name     = 'gRPC-Core'
-  version = '1.3.1-pre1'
+  version = '1.3.1'
   s.version  = version
   s.summary  = 'Core cross-platform gRPC library, written in C'
   s.homepage = 'http://www.grpc.io'
diff --git a/gRPC-ProtoRPC.podspec b/gRPC-ProtoRPC.podspec
index 73974b38bdfd4f893d91d98cab13b2c19a3b5a55..4a83345237b2a8ac7319bd830ee4da2f21e6f3ab 100644
--- a/gRPC-ProtoRPC.podspec
+++ b/gRPC-ProtoRPC.podspec
@@ -36,7 +36,7 @@
 
 Pod::Spec.new do |s|
   s.name     = 'gRPC-ProtoRPC'
-  version = '1.3.1-pre1'
+  version = '1.3.1'
   s.version  = version
   s.summary  = 'RPC library for Protocol Buffers, based on gRPC'
   s.homepage = 'http://www.grpc.io'
diff --git a/gRPC-RxLibrary.podspec b/gRPC-RxLibrary.podspec
index fbdeff5dfd4ec85a4a516dc320547873edeeafa9..83ecb613e1c7ffad2a79cc9c4c7d42d9659152a3 100644
--- a/gRPC-RxLibrary.podspec
+++ b/gRPC-RxLibrary.podspec
@@ -36,7 +36,7 @@
 
 Pod::Spec.new do |s|
   s.name     = 'gRPC-RxLibrary'
-  version = '1.3.1-pre1'
+  version = '1.3.1'
   s.version  = version
   s.summary  = 'Reactive Extensions library for iOS/OSX.'
   s.homepage = 'http://www.grpc.io'
diff --git a/gRPC.podspec b/gRPC.podspec
index 738042ba869ad5e7c06c808ccb9be3e1ffb031dd..29d3cb23b2b8da4bd6ab6cbea7ea0954fd828c93 100644
--- a/gRPC.podspec
+++ b/gRPC.podspec
@@ -35,7 +35,7 @@
 
 Pod::Spec.new do |s|
   s.name     = 'gRPC'
-  version = '1.3.1-pre1'
+  version = '1.3.1'
   s.version  = version
   s.summary  = 'gRPC client library for iOS/OSX'
   s.homepage = 'http://www.grpc.io'
diff --git a/package.json b/package.json
index 1864339bac559387707db61a266b03e54f374d88..51b6863ae34abb84964338f2a528509788deada2 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "grpc",
-  "version": "1.3.1-pre1",
+  "version": "1.3.1",
   "author": "Google Inc.",
   "description": "gRPC Library for Node",
   "homepage": "http://www.grpc.io/",
diff --git a/package.xml b/package.xml
index bad95d55762f1892542cb686593f88df44c767ef..fe50a96ad147e43c76f3b953552df55c7a84d366 100644
--- a/package.xml
+++ b/package.xml
@@ -13,8 +13,8 @@
  <date>2017-03-01</date>
  <time>16:06:07</time>
  <version>
-  <release>1.3.1RC1</release>
-  <api>1.3.1RC1</api>
+  <release>1.3.1</release>
+  <api>1.3.1</api>
  </version>
  <stability>
   <release>beta</release>
diff --git a/src/cpp/common/version_cc.cc b/src/cpp/common/version_cc.cc
index 8d6445ed505deebce657a749a7a39c8676ee3d45..de0bafaff5e189e53436b0c18c8aa409a6a53286 100644
--- a/src/cpp/common/version_cc.cc
+++ b/src/cpp/common/version_cc.cc
@@ -37,5 +37,5 @@
 #include <grpc++/grpc++.h>
 
 namespace grpc {
-grpc::string Version() { return "1.3.1-pre1"; }
+grpc::string Version() { return "1.3.1"; }
 }
diff --git a/src/csharp/Grpc.Core/Version.csproj.include b/src/csharp/Grpc.Core/Version.csproj.include
index fb0fdbbabc41bdca0977543833ce19d9d43c4264..25d3ca2e3b40f53d94e1d47c7b4270081a1b853c 100755
--- a/src/csharp/Grpc.Core/Version.csproj.include
+++ b/src/csharp/Grpc.Core/Version.csproj.include
@@ -1,7 +1,7 @@
 <!-- This file is generated -->
 <Project>
   <PropertyGroup>
-    <GrpcCsharpVersion>1.3.1-pre1</GrpcCsharpVersion>
+    <GrpcCsharpVersion>1.3.1</GrpcCsharpVersion>
     <GoogleProtobufVersion>3.2.0</GoogleProtobufVersion>
   </PropertyGroup>
 </Project>
diff --git a/src/csharp/Grpc.Core/VersionInfo.cs b/src/csharp/Grpc.Core/VersionInfo.cs
index dfe8c06e65dbd2551acaf40f3defe433aaae6bbe..2376485c68452292773d4ea14edcab16c4cc75ae 100644
--- a/src/csharp/Grpc.Core/VersionInfo.cs
+++ b/src/csharp/Grpc.Core/VersionInfo.cs
@@ -53,6 +53,6 @@ namespace Grpc.Core
         /// <summary>
         /// Current version of gRPC C#
         /// </summary>
-        public const string CurrentVersion = "1.3.1-pre1";
+        public const string CurrentVersion = "1.3.1";
     }
 }
diff --git a/src/csharp/build_packages_dotnetcli.bat b/src/csharp/build_packages_dotnetcli.bat
index 2080685379f89015e48e4b233146fced9983d0ad..1ed0ffa87c4412cde6931e19210446e03ca55a77 100755
--- a/src/csharp/build_packages_dotnetcli.bat
+++ b/src/csharp/build_packages_dotnetcli.bat
@@ -28,7 +28,7 @@
 @rem OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 @rem Current package versions
-set VERSION=1.3.1-pre1
+set VERSION=1.3.1
 
 @rem Adjust the location of nuget.exe
 set NUGET=C:\nuget\nuget.exe
diff --git a/src/csharp/build_packages_dotnetcli.sh b/src/csharp/build_packages_dotnetcli.sh
index ac6cc4e587957ef9938a1e765cc1254616c71b9e..4091ce7f9adf4f5b908cf3ab0d47cb91f46ed8f5 100755
--- a/src/csharp/build_packages_dotnetcli.sh
+++ b/src/csharp/build_packages_dotnetcli.sh
@@ -70,7 +70,7 @@ dotnet pack --configuration Release --include-symbols --include-source Grpc.Auth
 dotnet pack --configuration Release --include-symbols --include-source Grpc.HealthCheck --output ../../../artifacts
 dotnet pack --configuration Release --include-symbols --include-source Grpc.Reflection --output ../../../artifacts
 
-nuget pack Grpc.nuspec -Version "1.3.1-pre1" -OutputDirectory ../../artifacts
-nuget pack Grpc.Tools.nuspec -Version "1.3.1-pre1" -OutputDirectory ../../artifacts
+nuget pack Grpc.nuspec -Version "1.3.1" -OutputDirectory ../../artifacts
+nuget pack Grpc.Tools.nuspec -Version "1.3.1" -OutputDirectory ../../artifacts
 
 (cd ../../artifacts && zip csharp_nugets_dotnetcli.zip *.nupkg)
diff --git a/src/node/health_check/package.json b/src/node/health_check/package.json
index e7b50362fc558b0f299b8e8bc9c371666cba3681..b94518260f67ec2d720d7d7a750494e8e7716d83 100644
--- a/src/node/health_check/package.json
+++ b/src/node/health_check/package.json
@@ -1,6 +1,6 @@
 {
   "name": "grpc-health-check",
-  "version": "1.3.1-pre1",
+  "version": "1.3.1",
   "author": "Google Inc.",
   "description": "Health check service for use with gRPC",
   "repository": {
@@ -15,7 +15,7 @@
     }
   ],
   "dependencies": {
-    "grpc": "^1.3.1-pre1",
+    "grpc": "^1.3.1",
     "lodash": "^3.9.3",
     "google-protobuf": "^3.0.0"
   },
diff --git a/src/node/tools/package.json b/src/node/tools/package.json
index 9fefd433d553912583f17cb54a7ca7394c22714a..4556c127d992609555328ae7d7e9c7a5581f6971 100644
--- a/src/node/tools/package.json
+++ b/src/node/tools/package.json
@@ -1,6 +1,6 @@
 {
   "name": "grpc-tools",
-  "version": "1.3.1-pre1",
+  "version": "1.3.1",
   "author": "Google Inc.",
   "description": "Tools for developing with gRPC on Node.js",
   "homepage": "http://www.grpc.io/",
diff --git a/src/objective-c/!ProtoCompiler-gRPCPlugin.podspec b/src/objective-c/!ProtoCompiler-gRPCPlugin.podspec
index a0df2597e22ceb574a225ab11f784edb801925a4..0312a381dce1c38ea802a9487d0e6b641b3fb405 100644
--- a/src/objective-c/!ProtoCompiler-gRPCPlugin.podspec
+++ b/src/objective-c/!ProtoCompiler-gRPCPlugin.podspec
@@ -42,7 +42,7 @@ Pod::Spec.new do |s|
   # exclamation mark ensures that other "regular" pods will be able to find it as it'll be installed
   # before them.
   s.name     = '!ProtoCompiler-gRPCPlugin'
-  v = '1.3.1-pre1'
+  v = '1.3.1'
   s.version  = v
   s.summary  = 'The gRPC ProtoC plugin generates Objective-C files from .proto services.'
   s.description = <<-DESC
diff --git a/src/objective-c/GRPCClient/private/version.h b/src/objective-c/GRPCClient/private/version.h
index 83fe9e46d9c74c3aa133f80abef527110cee7504..7861e0a733e2c8e9cfc197d0eefd8428c2a3ec67 100644
--- a/src/objective-c/GRPCClient/private/version.h
+++ b/src/objective-c/GRPCClient/private/version.h
@@ -38,4 +38,4 @@
 // `tools/buildgen/generate_projects.sh`.
 
 
-#define GRPC_OBJC_VERSION_STRING @"1.3.1-pre1"
+#define GRPC_OBJC_VERSION_STRING @"1.3.1"
diff --git a/src/python/grpcio/grpc_version.py b/src/python/grpcio/grpc_version.py
index c0422372e80d7ec1e389c9c29f8dbc4f4cfd6ff6..495af70240f927021b0ea2dfd42e7fcd3321d33e 100644
--- a/src/python/grpcio/grpc_version.py
+++ b/src/python/grpcio/grpc_version.py
@@ -29,4 +29,4 @@
 
 # AUTO-GENERATED FROM `$REPO_ROOT/templates/src/python/grpcio/grpc_version.py.template`!!!
 
-VERSION='1.3.1rc1'
+VERSION='1.3.1'
diff --git a/src/python/grpcio_health_checking/grpc_version.py b/src/python/grpcio_health_checking/grpc_version.py
index da7546381f94d208a5e0d48e50747c6a95b89297..c0dae962d02bc86428394db0c0b4e84c855e2d04 100644
--- a/src/python/grpcio_health_checking/grpc_version.py
+++ b/src/python/grpcio_health_checking/grpc_version.py
@@ -29,4 +29,4 @@
 
 # AUTO-GENERATED FROM `$REPO_ROOT/templates/src/python/grpcio_health_checking/grpc_version.py.template`!!!
 
-VERSION='1.3.1rc1'
+VERSION='1.3.1'
diff --git a/src/python/grpcio_reflection/grpc_version.py b/src/python/grpcio_reflection/grpc_version.py
index 367773f088967ea1917842a1e0f4310bcd05865e..bc9fb1f4afbe172cd2d839ba19c716ec045c8542 100644
--- a/src/python/grpcio_reflection/grpc_version.py
+++ b/src/python/grpcio_reflection/grpc_version.py
@@ -29,4 +29,4 @@
 
 # AUTO-GENERATED FROM `$REPO_ROOT/templates/src/python/grpcio_reflection/grpc_version.py.template`!!!
 
-VERSION='1.3.1rc1'
+VERSION='1.3.1'
diff --git a/src/python/grpcio_tests/grpc_version.py b/src/python/grpcio_tests/grpc_version.py
index ce78dc93f226755ef7337b3ccab0b5a33ca11f2f..1a2281b177f740cf309ff2aa64b8952b9fa57309 100644
--- a/src/python/grpcio_tests/grpc_version.py
+++ b/src/python/grpcio_tests/grpc_version.py
@@ -29,4 +29,4 @@
 
 # AUTO-GENERATED FROM `$REPO_ROOT/templates/src/python/grpcio_tests/grpc_version.py.template`!!!
 
-VERSION='1.3.1rc1'
+VERSION='1.3.1'
diff --git a/src/ruby/lib/grpc/version.rb b/src/ruby/lib/grpc/version.rb
index b6825fa11915680ce50ac5ff2d8e0c204b9942da..1e723a935e332ad14391639431c02529332e4c7c 100644
--- a/src/ruby/lib/grpc/version.rb
+++ b/src/ruby/lib/grpc/version.rb
@@ -29,5 +29,5 @@
 
 # GRPC contains the General RPC module.
 module GRPC
-  VERSION = '1.3.1.pre1'
+  VERSION = '1.3.1'
 end
diff --git a/src/ruby/tools/version.rb b/src/ruby/tools/version.rb
index e02b87e5da0d6e59e4a378b9a89ec4d59a1fd31e..d9109372afa47430d0c0fcdd858e732cd52f57be 100644
--- a/src/ruby/tools/version.rb
+++ b/src/ruby/tools/version.rb
@@ -29,6 +29,6 @@
 
 module GRPC
   module Tools
-    VERSION = '1.3.1.pre1'
+    VERSION = '1.3.1'
   end
 end
diff --git a/tools/distrib/python/grpcio_tools/grpc_version.py b/tools/distrib/python/grpcio_tools/grpc_version.py
index ca1d268f890457d501df58414347f034534f5f1d..9a12f6b84c398515d344eb67d66425b646effa0d 100644
--- a/tools/distrib/python/grpcio_tools/grpc_version.py
+++ b/tools/distrib/python/grpcio_tools/grpc_version.py
@@ -29,4 +29,4 @@
 
 # AUTO-GENERATED FROM `$REPO_ROOT/templates/tools/distrib/python/grpcio_tools/grpc_version.py.template`!!!
 
-VERSION='1.3.1rc1'
+VERSION='1.3.1'
diff --git a/tools/doxygen/Doxyfile.c++ b/tools/doxygen/Doxyfile.c++
index debd50638f0b0089d04d03da8db93acd26ef5701..8fa5b3ede59496b683c938dc60806d679b57a53a 100644
--- a/tools/doxygen/Doxyfile.c++
+++ b/tools/doxygen/Doxyfile.c++
@@ -40,7 +40,7 @@ PROJECT_NAME           = "GRPC C++"
 # could be handy for archiving the generated documentation or if some version
 # control system is used.
 
-PROJECT_NUMBER         = 1.3.1-pre1
+PROJECT_NUMBER         = 1.3.1
 
 # Using the PROJECT_BRIEF tag one can provide an optional one line description
 # for a project that appears at the top of each page and should give viewer a
diff --git a/tools/doxygen/Doxyfile.c++.internal b/tools/doxygen/Doxyfile.c++.internal
index 7064e6641bad5f23ff2f414315d8c33fdc7856bd..d620f99ff1c5ad9623290a5ea35856740e6a844a 100644
--- a/tools/doxygen/Doxyfile.c++.internal
+++ b/tools/doxygen/Doxyfile.c++.internal
@@ -40,7 +40,7 @@ PROJECT_NAME           = "GRPC C++"
 # could be handy for archiving the generated documentation or if some version
 # control system is used.
 
-PROJECT_NUMBER         = 1.3.1-pre1
+PROJECT_NUMBER         = 1.3.1
 
 # Using the PROJECT_BRIEF tag one can provide an optional one line description
 # for a project that appears at the top of each page and should give viewer a