diff --git a/src/core/channel/call_op_string.c b/src/core/channel/call_op_string.c
index 9a7838ce2fc571d12577bf09ad5f76b794e7a606..789913901ade92a8d33fe838adb3a39134aed290 100644
--- a/src/core/channel/call_op_string.c
+++ b/src/core/channel/call_op_string.c
@@ -37,8 +37,8 @@
 #include <stdio.h>
 #include <string.h>
 
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
-#include <grpc/support/string.h>
 #include <grpc/support/useful.h>
 
 #define MAX_APPEND 1024
diff --git a/src/core/channel/channel_args.c b/src/core/channel/channel_args.c
index 36312e54de80a08adafe680d4022f3e55ef7bbb9..04ce519ff37eef55b6c8cf55778fee4bd9ce7743 100644
--- a/src/core/channel/channel_args.c
+++ b/src/core/channel/channel_args.c
@@ -33,9 +33,9 @@
 
 #include <grpc/grpc.h>
 #include "src/core/channel/channel_args.h"
+#include "src/core/support/string.h"
 
 #include <grpc/support/alloc.h>
-#include <grpc/support/string.h>
 
 #include <string.h>
 
diff --git a/src/core/channel/client_channel.c b/src/core/channel/client_channel.c
index fa75561c78b6946d0e859a3604f91ef0283ba052..f6078aa80802e4ad663b47aa043ba98ae7be6fcc 100644
--- a/src/core/channel/client_channel.c
+++ b/src/core/channel/client_channel.c
@@ -40,9 +40,9 @@
 #include "src/core/channel/connected_channel.h"
 #include "src/core/channel/metadata_buffer.h"
 #include "src/core/iomgr/iomgr.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/sync.h>
 #include <grpc/support/useful.h>
 
diff --git a/src/core/channel/connected_channel.c b/src/core/channel/connected_channel.c
index e01cb81a890e486fe25f3692af28aa102623d059..cfa76f9e488fe426f41d0adea2c256b6300c8d02 100644
--- a/src/core/channel/connected_channel.c
+++ b/src/core/channel/connected_channel.c
@@ -37,12 +37,12 @@
 #include <stdio.h>
 #include <string.h>
 
+#include "src/core/support/string.h"
 #include "src/core/transport/transport.h"
 #include <grpc/byte_buffer.h>
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 #include <grpc/support/slice_buffer.h>
-#include <grpc/support/string.h>
 
 #define MAX_BUFFER_LENGTH 8192
 /* the protobuf library will (by default) start warning at 100megs */
diff --git a/src/core/httpcli/httpcli.c b/src/core/httpcli/httpcli.c
index 2143eeb63d03db82d2aa16f2482cc68d332c6f06..d6fd8ca8658a357d0020d22d06eeeeb54fed152f 100644
--- a/src/core/httpcli/httpcli.c
+++ b/src/core/httpcli/httpcli.c
@@ -44,9 +44,9 @@
 #include "src/core/security/security_context.h"
 #include "src/core/security/google_root_certs.h"
 #include "src/core/security/secure_transport_setup.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 
 typedef struct {
   gpr_slice request_text;
diff --git a/src/core/httpcli/httpcli_security_context.c b/src/core/httpcli/httpcli_security_context.c
index c7b9b330f0d78ccab8d3b7b66d840603509495ad..d074e163f16b451e132acfc615518e1d82eac39c 100644
--- a/src/core/httpcli/httpcli_security_context.c
+++ b/src/core/httpcli/httpcli_security_context.c
@@ -36,9 +36,9 @@
 #include <string.h>
 
 #include "src/core/security/secure_transport_setup.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include "src/core/tsi/ssl_transport_security.h"
 
 typedef struct {
diff --git a/src/core/iomgr/resolve_address_posix.c b/src/core/iomgr/resolve_address_posix.c
index c9c2c5378a5f5bb3bd94c965bce4a260fb7ccb34..f80eea7f46e930d3a6b5055d0019debc4aa09b0c 100644
--- a/src/core/iomgr/resolve_address_posix.c
+++ b/src/core/iomgr/resolve_address_posix.c
@@ -44,9 +44,9 @@
 #include "src/core/iomgr/iomgr_internal.h"
 #include "src/core/iomgr/sockaddr_utils.h"
 #include "src/core/iomgr/socket_utils_posix.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/thd.h>
 #include <grpc/support/time.h>
 
diff --git a/src/core/iomgr/sockaddr_utils.c b/src/core/iomgr/sockaddr_utils.c
index eca14a4f398b8b1642cd4fa0b904ef60cd0ac150..5bb1124284312d52a6304cf200efea6a02f80dc3 100644
--- a/src/core/iomgr/sockaddr_utils.c
+++ b/src/core/iomgr/sockaddr_utils.c
@@ -37,8 +37,8 @@
 #include <errno.h>
 #include <string.h>
 
+#include "src/core/support/string.h"
 #include <grpc/support/host_port.h>
-#include <grpc/support/string.h>
 #include <grpc/support/log.h>
 #include <grpc/support/port_platform.h>
 
diff --git a/src/core/iomgr/socket_utils_common_posix.c b/src/core/iomgr/socket_utils_common_posix.c
index 3a0639f35678f86a2ce9d97ca2628aa1c7372986..1854285b5a433bf3e2f69ed7bc815e7eaccdfd0e 100644
--- a/src/core/iomgr/socket_utils_common_posix.c
+++ b/src/core/iomgr/socket_utils_common_posix.c
@@ -50,8 +50,8 @@
 #include <errno.h>
 
 #include "src/core/iomgr/sockaddr_utils.h"
+#include "src/core/support/string.h"
 #include <grpc/support/host_port.h>
-#include <grpc/support/string.h>
 #include <grpc/support/log.h>
 #include <grpc/support/port_platform.h>
 #include <grpc/support/sync.h>
diff --git a/src/core/iomgr/tcp_posix.c b/src/core/iomgr/tcp_posix.c
index 64996bd07d1bed353e3e8be63475b77b038ba299..a9b59df8854e47f246d5d2861793484a356b86b1 100644
--- a/src/core/iomgr/tcp_posix.c
+++ b/src/core/iomgr/tcp_posix.c
@@ -44,10 +44,10 @@
 #include <sys/socket.h>
 #include <unistd.h>
 
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 #include <grpc/support/slice.h>
-#include <grpc/support/string.h>
 #include <grpc/support/sync.h>
 #include <grpc/support/time.h>
 
diff --git a/src/core/security/credentials.c b/src/core/security/credentials.c
index 628963e46cde1cdd527b45570cbaf971b2c50660..db73c01c1de58f16ee9bcdbb31667ef752cb513c 100644
--- a/src/core/security/credentials.c
+++ b/src/core/security/credentials.c
@@ -36,9 +36,9 @@
 #include "src/core/httpcli/httpcli.h"
 #include "src/core/iomgr/iomgr.h"
 #include "src/core/security/json_token.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/sync.h>
 #include <grpc/support/time.h>
 
diff --git a/src/core/security/json_token.c b/src/core/security/json_token.c
index 14ee758e8bfabaa6853933e9784187c2d5940b36..82bd9b505a23eaa1c1c39fb38df55f52a0e83b99 100644
--- a/src/core/security/json_token.c
+++ b/src/core/security/json_token.c
@@ -37,9 +37,9 @@
 
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 
 #include "src/core/security/base64.h"
+#include "src/core/support/string.h"
 
 #include <openssl/bio.h>
 #include <openssl/evp.h>
diff --git a/src/core/security/secure_endpoint.c b/src/core/security/secure_endpoint.c
index e73767c1aad3ca238af3d98e3ea5763ee352a1c6..9f12cf5d60f2370e521e8391eb53147e0dca6f10 100644
--- a/src/core/security/secure_endpoint.c
+++ b/src/core/security/secure_endpoint.c
@@ -32,11 +32,11 @@
  */
 
 #include "src/core/security/secure_endpoint.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 #include <grpc/support/slice_buffer.h>
 #include <grpc/support/slice.h>
-#include <grpc/support/string.h>
 #include <grpc/support/sync.h>
 #include "src/core/tsi/transport_security_interface.h"
 
diff --git a/src/core/security/security_context.c b/src/core/security/security_context.c
index cce3c7fe04fc39aec3b86fd2d6ec8c003a361bfd..58cd458415d50644aa6a503b444181523005e1f7 100644
--- a/src/core/security/security_context.c
+++ b/src/core/security/security_context.c
@@ -39,12 +39,12 @@
 #include "src/core/channel/http_client_filter.h"
 #include "src/core/security/credentials.h"
 #include "src/core/security/secure_endpoint.h"
+#include "src/core/support/string.h"
 #include "src/core/surface/lame_client.h"
 #include "src/core/transport/chttp2/alpn.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 #include <grpc/support/slice_buffer.h>
-#include <grpc/support/string.h>
 #include "src/core/tsi/fake_transport_security.h"
 #include "src/core/tsi/ssl_transport_security.h"
 
diff --git a/src/core/statistics/census_rpc_stats.c b/src/core/statistics/census_rpc_stats.c
index 39094b5f65a2b323abba0141f840e5bcb7bb13aa..dd3c07e80b38377a6cebc629fdb5b9c8e421bae0 100644
--- a/src/core/statistics/census_rpc_stats.c
+++ b/src/core/statistics/census_rpc_stats.c
@@ -39,9 +39,9 @@
 #include "src/core/statistics/census_tracing.h"
 #include "src/core/statistics/window_stats.h"
 #include "src/core/support/murmur_hash.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/sync.h>
 
 #define NUM_INTERVALS 3
diff --git a/src/core/statistics/census_tracing.c b/src/core/statistics/census_tracing.c
index 1e616020715176622c384c675effae1083b99055..3c4ba66f5f4a546866d99772bf0874962a98d3b4 100644
--- a/src/core/statistics/census_tracing.c
+++ b/src/core/statistics/census_tracing.c
@@ -38,10 +38,10 @@
 
 #include "src/core/statistics/census_rpc_stats.h"
 #include "src/core/statistics/hash_table.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 #include <grpc/support/port_platform.h>
-#include <grpc/support/string.h>
 #include <grpc/support/sync.h>
 #include <grpc/support/time.h>
 
diff --git a/src/core/support/cmdline.c b/src/core/support/cmdline.c
index ff163a1f6cc1bfc57d9dffa6f1f2ba850a233250..a55da9dd1888db7bd1f6629ecbb373c6f100525a 100644
--- a/src/core/support/cmdline.c
+++ b/src/core/support/cmdline.c
@@ -37,9 +37,9 @@
 #include <stdio.h>
 #include <string.h>
 
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 
 typedef enum { ARGTYPE_INT, ARGTYPE_BOOL, ARGTYPE_STRING } argtype;
 
diff --git a/src/core/support/host_port.c b/src/core/support/host_port.c
index 02500551fcd6bad379722cf395e1f573c297c94d..446c11ebec31c4a2c65d3dbea469c2717f48e7d8 100644
--- a/src/core/support/host_port.c
+++ b/src/core/support/host_port.c
@@ -35,8 +35,8 @@
 
 #include <string.h>
 
+#include "src/core/support/string.h"
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 
 int gpr_join_host_port(char **out, const char *host, int port) {
   if (host[0] != '[' && strchr(host, ':') != NULL) {
diff --git a/src/core/support/string.c b/src/core/support/string.c
index 7e84437fac7e10b5e35a8376a665852dc1b3352c..9b5cac75966fc00080647949b5cd07503be16e7a 100644
--- a/src/core/support/string.c
+++ b/src/core/support/string.c
@@ -31,7 +31,7 @@
  *
  */
 
-#include <grpc/support/string.h>
+#include "src/core/support/string.h"
 
 #include <ctype.h>
 #include <stddef.h>
diff --git a/include/grpc/support/string.h b/src/core/support/string.h
similarity index 100%
rename from include/grpc/support/string.h
rename to src/core/support/string.h
diff --git a/src/core/surface/call.c b/src/core/surface/call.c
index 46502fb6b1423fcdeb4f38251e52dca062c4b8db..1786523db2771ab395cccc480968dc5e8e8c6733 100644
--- a/src/core/surface/call.c
+++ b/src/core/surface/call.c
@@ -35,11 +35,11 @@
 #include "src/core/channel/channel_stack.h"
 #include "src/core/channel/metadata_buffer.h"
 #include "src/core/iomgr/alarm.h"
+#include "src/core/support/string.h"
 #include "src/core/surface/channel.h"
 #include "src/core/surface/completion_queue.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/src/core/surface/channel_create.c b/src/core/surface/channel_create.c
index 41093d78effcc809d224833838dabe75376dd3c4..6939b92c60c12845942e7ed773f1c791f9c70128 100644
--- a/src/core/surface/channel_create.c
+++ b/src/core/surface/channel_create.c
@@ -48,10 +48,10 @@
 #include "src/core/iomgr/tcp_client.h"
 #include "src/core/surface/channel.h"
 #include "src/core/surface/client.h"
+#include "src/core/support/string.h"
 #include "src/core/transport/chttp2_transport.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/sync.h>
 #include <grpc/support/useful.h>
 
diff --git a/src/core/surface/client.c b/src/core/surface/client.c
index 74c79bdf9b128a70410a43ca77484dfe5739b408..fe3a81f1b9f5a5f8ce43feac6a748d930997937f 100644
--- a/src/core/surface/client.c
+++ b/src/core/surface/client.c
@@ -34,9 +34,9 @@
 #include "src/core/surface/client.h"
 
 #include "src/core/surface/call.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 
 typedef struct { void *unused; } call_data;
 
diff --git a/src/core/surface/completion_queue.c b/src/core/surface/completion_queue.c
index 652f23e888959c76ab3d8dd7d176c1aea6d3e439..e1cc114cda647446078d4e6ee580489ff8cef7d8 100644
--- a/src/core/surface/completion_queue.c
+++ b/src/core/surface/completion_queue.c
@@ -37,13 +37,13 @@
 #include <string.h>
 
 #include "src/core/iomgr/pollset.h"
+#include "src/core/support/string.h"
 #include "src/core/surface/call.h"
 #include "src/core/surface/event_string.h"
 #include "src/core/surface/surface_trace.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/atm.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 
 #define NUM_TAG_BUCKETS 31
 
diff --git a/src/core/surface/event_string.c b/src/core/surface/event_string.c
index 8ae2af74726ad963bf4993d37f5bcf8b147b2f4c..e38ef06c9ff662f357144296ddb6800274f38391 100644
--- a/src/core/surface/event_string.c
+++ b/src/core/surface/event_string.c
@@ -35,7 +35,7 @@
 
 #include <stdio.h>
 
-#include <grpc/support/string.h>
+#include "src/core/support/string.h"
 #include <grpc/byte_buffer.h>
 
 static size_t addhdr(char *p, grpc_event *ev) {
diff --git a/src/core/surface/lame_client.c b/src/core/surface/lame_client.c
index a5244dbe61f10a52f26a948e12152382da543222..056c98646b870793de36c1eba6578a3f03474ffa 100644
--- a/src/core/surface/lame_client.c
+++ b/src/core/surface/lame_client.c
@@ -36,11 +36,11 @@
 #include <string.h>
 
 #include "src/core/channel/channel_stack.h"
+#include "src/core/support/string.h"
 #include "src/core/surface/channel.h"
 #include "src/core/surface/call.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 
 typedef struct { void *unused; } call_data;
 
diff --git a/src/core/surface/secure_channel_create.c b/src/core/surface/secure_channel_create.c
index 3d5727927d0aad330833a9db3cbbb9da8e18ed9c..a231b2708e6a8543eb688faf7e8d6a4041ac6d5a 100644
--- a/src/core/surface/secure_channel_create.c
+++ b/src/core/surface/secure_channel_create.c
@@ -48,13 +48,13 @@
 #include "src/core/security/auth.h"
 #include "src/core/security/security_context.h"
 #include "src/core/security/secure_transport_setup.h"
+#include "src/core/support/string.h"
 #include "src/core/surface/channel.h"
 #include "src/core/surface/client.h"
 #include "src/core/transport/chttp2_transport.h"
 #include <grpc/grpc_security.h>
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/sync.h>
 #include <grpc/support/useful.h>
 #include "src/core/tsi/transport_security_interface.h"
diff --git a/src/core/surface/server.c b/src/core/surface/server.c
index cbdd3bfa30871f8a37ef171868f7ad30ffbefa86..9585e4e8ea63ca0a0f31c03931eb74575c7cba54 100644
--- a/src/core/surface/server.c
+++ b/src/core/surface/server.c
@@ -40,12 +40,12 @@
 #include "src/core/channel/channel_args.h"
 #include "src/core/channel/connected_channel.h"
 #include "src/core/iomgr/iomgr.h"
+#include "src/core/support/string.h"
 #include "src/core/surface/call.h"
 #include "src/core/surface/channel.h"
 #include "src/core/surface/completion_queue.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/useful.h>
 
 typedef enum { PENDING_START, ALL_CALLS, CALL_LIST_COUNT } call_list;
diff --git a/src/core/transport/chttp2/frame_data.c b/src/core/transport/chttp2/frame_data.c
index 00b020b31b16489d1a32619a187958300a348d75..dee61cee5007531bbb9542516dff08ee60162d52 100644
--- a/src/core/transport/chttp2/frame_data.c
+++ b/src/core/transport/chttp2/frame_data.c
@@ -35,9 +35,9 @@
 
 #include <string.h>
 
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/useful.h>
 #include "src/core/transport/transport.h"
 
diff --git a/src/core/transport/chttp2/hpack_parser.c b/src/core/transport/chttp2/hpack_parser.c
index 64e08ffac727dd0c0816957e54eddec19a72de9a..c98b90e5d11c1f4c2884dbcdefca9444461da952 100644
--- a/src/core/transport/chttp2/hpack_parser.c
+++ b/src/core/transport/chttp2/hpack_parser.c
@@ -38,10 +38,10 @@
 #include <assert.h>
 
 #include "src/core/transport/chttp2/bin_encoder.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 #include <grpc/support/port_platform.h>
-#include <grpc/support/string.h>
 #include <grpc/support/useful.h>
 
 typedef enum {
diff --git a/src/core/transport/chttp2/timeout_encoding.c b/src/core/transport/chttp2/timeout_encoding.c
index 7217afa478c54c9bd707c7feb67a7533312a4b48..23c4554cf275e0438752ab7c13d3036bd3b2efe3 100644
--- a/src/core/transport/chttp2/timeout_encoding.c
+++ b/src/core/transport/chttp2/timeout_encoding.c
@@ -36,7 +36,7 @@
 #include <stdio.h>
 #include <string.h>
 
-#include <grpc/support/string.h>
+#include "src/core/support/string.h"
 
 static int round_up(int x, int divisor) {
   return (x / divisor + (x % divisor != 0)) * divisor;
diff --git a/src/core/transport/chttp2_transport.c b/src/core/transport/chttp2_transport.c
index 17b37d6d4ae9edee4c002ee4566a9b20c98b0f01..6dfffa1fc502963bfecd0e7e9109521197fe11f0 100644
--- a/src/core/transport/chttp2_transport.c
+++ b/src/core/transport/chttp2_transport.c
@@ -37,6 +37,7 @@
 #include <stdio.h>
 #include <string.h>
 
+#include "src/core/support/string.h"
 #include "src/core/transport/chttp2/frame_data.h"
 #include "src/core/transport/chttp2/frame_goaway.h"
 #include "src/core/transport/chttp2/frame_ping.h"
@@ -53,7 +54,6 @@
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 #include <grpc/support/slice_buffer.h>
-#include <grpc/support/string.h>
 #include <grpc/support/useful.h>
 
 #define DEFAULT_WINDOW 65535
diff --git a/test/core/echo/echo_test.c b/test/core/echo/echo_test.c
index 16d381fb6542f442294dcf64df05ae1aeb6c22f9..6449b2414f39f5aefc44934f217191afb7b85b5a 100644
--- a/test/core/echo/echo_test.c
+++ b/test/core/echo/echo_test.c
@@ -42,10 +42,10 @@
 #include <sys/wait.h>
 
 #include "src/core/iomgr/socket_utils_posix.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/host_port.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include "test/core/util/port.h"
 
 int test_client(const char *root, const char *host, int port) {
diff --git a/test/core/echo/server.c b/test/core/echo/server.c
index 35f118dc9b131c8bb7757b3d6523e15d698ea5ce..57b083779c31617e8c8fdd54857a814a191ed823 100644
--- a/test/core/echo/server.c
+++ b/test/core/echo/server.c
@@ -39,11 +39,11 @@
 #include <string.h>
 #include <time.h>
 
+#include "src/core/support/string.h"
 #include "test/core/util/test_config.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/host_port.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/time.h>
 #include "test/core/util/port.h"
 
diff --git a/test/core/end2end/cq_verifier.c b/test/core/end2end/cq_verifier.c
index 7a7f197907d9c19d75b8c8d1dd0b9bc224517fb7..37a7f7e32c2bd938395d22d58a79d905c1d3dfbc 100644
--- a/test/core/end2end/cq_verifier.c
+++ b/test/core/end2end/cq_verifier.c
@@ -45,10 +45,10 @@
 #include <string.h>
 
 #include "src/core/surface/event_string.h"
+#include "src/core/support/string.h"
 #include <grpc/byte_buffer.h>
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/time.h>
 #include <grpc/support/useful.h>
 
diff --git a/test/core/fling/fling_stream_test.c b/test/core/fling/fling_stream_test.c
index f6fe69824b324083f5294945568c1798fb372640..7f52fb1bad19e2989a503676a579b22644a17885 100644
--- a/test/core/fling/fling_stream_test.c
+++ b/test/core/fling/fling_stream_test.c
@@ -41,9 +41,9 @@
 #include <sys/types.h>
 #include <sys/wait.h>
 
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/host_port.h>
-#include <grpc/support/string.h>
 #include "test/core/util/port.h"
 
 int main(int argc, char **argv) {
diff --git a/test/core/fling/fling_test.c b/test/core/fling/fling_test.c
index 4607aa5f9884910fbdce5c2577c966be148b0b79..b2272f20c8ebcd47d2df5ff81639171bc93014d2 100644
--- a/test/core/fling/fling_test.c
+++ b/test/core/fling/fling_test.c
@@ -43,7 +43,7 @@
 
 #include <grpc/support/alloc.h>
 #include <grpc/support/host_port.h>
-#include <grpc/support/string.h>
+#include "src/core/support/string.h"
 #include "test/core/util/port.h"
 
 int main(int argc, char **argv) {
diff --git a/test/core/security/credentials_test.c b/test/core/security/credentials_test.c
index 9c60f4c23380ae7fb0cb0781de42ffc2d81aa3cf..ec21e0d42f71efd679a63340dcda67fefb919043 100644
--- a/test/core/security/credentials_test.c
+++ b/test/core/security/credentials_test.c
@@ -37,9 +37,9 @@
 
 #include "src/core/httpcli/httpcli.h"
 #include "src/core/security/json_token.h"
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/time.h>
 #include "test/core/util/test_config.h"
 #include <openssl/rsa.h>
diff --git a/test/core/support/string_test.c b/test/core/support/string_test.c
index e87a606aba25ce3550d6755a0d46f348dae8617d..a01ec6f87f37989a9147ff96b12b1760b7bb3ad9 100644
--- a/test/core/support/string_test.c
+++ b/test/core/support/string_test.c
@@ -31,7 +31,7 @@
  *
  */
 
-#include <grpc/support/string.h>
+#include "src/core/support/string.h"
 
 #include <stddef.h>
 #include <stdlib.h>
diff --git a/test/core/transport/chttp2/bin_encoder_test.c b/test/core/transport/chttp2/bin_encoder_test.c
index ea24f5cbd7ae15aa14d38d9850538bc7f3ff92f4..048ed7edd3cb4f8a17a86c8211a015f76acbed30 100644
--- a/test/core/transport/chttp2/bin_encoder_test.c
+++ b/test/core/transport/chttp2/bin_encoder_test.c
@@ -35,9 +35,9 @@
 
 #include <string.h>
 
+#include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 
 static int all_ok = 1;
 
diff --git a/test/core/transport/chttp2/stream_encoder_test.c b/test/core/transport/chttp2/stream_encoder_test.c
index cebc2634fbaad1d477560a6cfd8e48cb76ff9b3e..eb0f688f58e9f02395c5e2562001b6790dfeef40 100644
--- a/test/core/transport/chttp2/stream_encoder_test.c
+++ b/test/core/transport/chttp2/stream_encoder_test.c
@@ -35,10 +35,10 @@
 
 #include <stdio.h>
 
+#include "src/core/support/string.h"
 #include "src/core/transport/chttp2/hpack_parser.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include "test/core/util/parse_hexstring.h"
 #include "test/core/util/slice_splitter.h"
 #include "test/core/util/test_config.h"
diff --git a/test/core/transport/transport_end2end_tests.c b/test/core/transport/transport_end2end_tests.c
index 5d26ef53b9051d1fe86611c395825e72dc991b24..8e9b4a2cc9ec891585a3b1fc46f7f96e43c8df86 100644
--- a/test/core/transport/transport_end2end_tests.c
+++ b/test/core/transport/transport_end2end_tests.c
@@ -37,10 +37,10 @@
 #include <stdio.h>
 #include <string.h>
 
+#include "src/core/support/string.h"
 #include "src/core/transport/transport.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
-#include <grpc/support/string.h>
 #include <grpc/support/thd.h>
 #include <grpc/support/useful.h>