1
00:00:00,000 --> 00:00:02,720
Welcome to the show -- April 29,

2
00:00:02,720 --> 00:00:11,686
2026, Claude Code v2.

3
00:00:02,720 --> 00:00:11,686
1.122 slips in one little environment
variable,

4
00:00:11,686 --> 00:00:17,205
and I swear this is the sort of thing
that can quietly save or burn a

5
00:00:17,205 --> 00:00:24,347
pile of money:
ANTHROPIC_BEDROCK_SERVICE_TIER.[questionin

6
00:00:17,205 --> 00:00:24,347
g tone] v2.

7
00:00:17,205 --> 00:00:24,347
1.122

8
00:00:24,347 --> 00:00:28,148
is the part I'm locking onto,
because this wasn't some ancient config

9
00:00:28,148 --> 00:00:29,446
knob people forgot about.

10
00:00:29,446 --> 00:00:31,842
This showed up on a specific date,

11
00:00:31,842 --> 00:00:36,795
April 29, 2026, and suddenly Bedrock
users could pick default,

12
00:00:36,795 --> 00:00:39,400
flex, or priority themselves?Yeah,

13
00:00:39,400 --> 00:00:40,200
exactly.

14
00:00:40,200 --> 00:00:44,114
Before that, if you were using Claude
Code through Bedrock,

15
00:00:44,114 --> 00:00:47,976
you were mostly inheriting whatever
Amazon's default behavior was for

16
00:00:47,976 --> 00:00:49,424
that request path.

17
00:00:49,424 --> 00:00:54,179
After v2.

18
00:00:49,424 --> 00:00:54,179
1.122, you can explicitly set default,

19
00:00:54,179 --> 00:00:55,697
flex, or priority.

20
00:00:55,697 --> 00:00:59,758
And that's not cosmetic -- not a little
local preference tucked in a

21
00:00:59,758 --> 00:01:04,105
config file like choosing dark mode in
your editor.

22
00:01:04,105 --> 00:01:08,640
Right, because the important token there
is not "env var," it's the header.

23
00:01:08,640 --> 00:01:14,374
Claude Code forwards it as
X-Amzn-Bedrock-Service-Tier on every

24
00:01:08,640 --> 00:01:14,374
inference

25
00:01:14,374 --> 00:01:15,034
request.

26
00:01:15,034 --> 00:01:19,639
So the request Bedrock receives is
materially different.Spot

27
00:01:19,639 --> 00:01:20,159
on.

28
00:01:20,159 --> 00:01:23,799
X-Amzn-Bedrock-Service-Tier is the bit
that matters.

29
00:01:23,799 --> 00:01:26,280
If you set flex, the wire says flex.

30
00:01:26,280 --> 00:01:29,557
If you set priority,
the wire says priority.

31
00:01:29,557 --> 00:01:30,914
Bedrock isn't guessing.

32
00:01:30,914 --> 00:01:35,379
And, mate, that's the hidden lever:
you're no longer just choosing a

33
00:01:35,379 --> 00:01:40,267
coding tool preference, you're choosing
the lane your tokens travel in.

34
00:01:35,379 --> 00:01:40,267
Lane

35
00:01:40,267 --> 00:01:41,121
is a good analogy.

36
00:01:41,121 --> 00:01:45,314
Because "default" always sounds neutral
-- like the cloud equivalent

37
00:01:45,314 --> 00:01:46,486
of tap water.

38
00:01:46,486 --> 00:01:49,678
But usually default is a business
decision in disguise.

39
00:01:49,678 --> 00:01:51,276
It's somebody upstream saying,

40
00:01:51,276 --> 00:01:56,205
"for the average customer, this margin
and capacity tradeoff works for

41
00:01:51,276 --> 00:01:56,205
us."

42
00:01:56,205 --> 00:01:57,121
Oh, a hundred percent.

43
00:01:57,121 --> 00:02:00,934
I learned that the dumb way years ago
pushing client stuff into managed

44
00:02:00,934 --> 00:02:01,438
services.

45
00:02:01,438 --> 00:02:04,720
I used to treat default like the safe
setting -- like,

46
00:02:04,720 --> 00:02:06,966
if the vendor picked it, she'll be right.

47
00:02:06,966 --> 00:02:10,967
Then you realize default might mean
easiest to sell,

48
00:02:10,967 --> 00:02:14,807
easiest to support,
or best for THEIR blended economics.

49
00:02:14,807 --> 00:02:16,647
Not best for your use case.

50
00:02:16,647 --> 00:02:19,850
I had one hosting setup -- different
stack,

51
00:02:19,850 --> 00:02:24,030
same lesson -- where the "recommended"
tier was basically a toll road

52
00:02:24,030 --> 00:02:27,958
for a bicycle."A toll road for
a bicycle" is perfect.

53
00:02:27,958 --> 00:02:32,835
And here the toll road question is
concrete: flex versus priority.

54
00:02:32,835 --> 00:02:37,373
Flex gives you a discount,
but in exchange you accept higher latency

55
00:02:37,373 --> 00:02:38,917
and no throughput guarantee.

56
00:02:38,917 --> 00:02:42,198
Priority is the opposite: lower latency,

57
00:02:42,198 --> 00:02:45,717
reserved capacity, premium price.

58
00:02:42,198 --> 00:02:45,717
Exactly.

59
00:02:45,717 --> 00:02:46,837
That's the tension.

60
00:02:46,837 --> 00:02:49,080
If you're on flex, you're telling Bedrock,

61
00:02:49,080 --> 00:02:54,436
"I care more about lower cost than snappy
response." If you're on priority,

62
00:02:54,436 --> 00:02:58,991
you're saying,
"I need this thing to move,

63
00:02:54,436 --> 00:02:58,991
and I'm willing to pay for the privilege."

64
00:02:58,991 --> 00:03:04,037
Default sits in the middle as the
inherited standard on-demand path,

65
00:03:04,037 --> 00:03:08,204
but now you can stop pretending one lane
is right for everything.

66
00:03:08,204 --> 00:03:10,565
And this is where people fool themselves.

67
00:03:10,565 --> 00:03:14,487
They hear "discount" and think flex is
just free money.

68
00:03:14,487 --> 00:03:17,683
But "no throughput guarantee" is not
fluff.

69
00:03:17,683 --> 00:03:21,250
If you've got a team in a shared coding
session and the model starts

70
00:03:21,250 --> 00:03:24,166
dragging,
that delay compounds across humans.

71
00:03:24,166 --> 00:03:27,122
Three extra seconds here, five there,

72
00:03:27,122 --> 00:03:30,403
twenty turns later you've built a tax on
attention.Yep.

73
00:03:30,403 --> 00:03:33,605
Human waiting time is expensive in a
weird,

74
00:03:33,605 --> 00:03:37,644
slippery way because it doesn't show up
as a line item as cleanly as

75
00:03:37,644 --> 00:03:38,806
AWS spend.

76
00:03:38,806 --> 00:03:40,246
But you feel it.

77
00:03:40,246 --> 00:03:45,002
It's like a rattly bike chain -- each
little skip seems minor until the

78
00:03:45,002 --> 00:03:46,642
whole ride turns into a slog.

79
00:03:46,642 --> 00:03:49,847
If Claude Code is your interactive pair
programmer,

80
00:03:49,847 --> 00:03:52,006
latency isn't just a technical metric.

81
00:03:52,006 --> 00:03:56,317
It's the rhythm of thought.

82
00:03:52,006 --> 00:03:56,317
And the flip side is just as real.

83
00:03:56,317 --> 00:04:01,658
If you've got some background job chewing
through code review or summarization

84
00:04:01,658 --> 00:04:04,080
and nobody is staring at the cursor,

85
00:04:04,080 --> 00:04:06,719
putting that on priority is kind of
absurd.

86
00:04:06,719 --> 00:04:10,530
You're buying airport fast lane for a
package that's being delivered

87
00:04:10,530 --> 00:04:13,045
overnight anyway.That's
the whole game,

88
00:04:13,045 --> 00:04:13,286
really.

89
00:04:13,286 --> 00:04:19,986
This tiny April 29 change exposes a cost
lever that was previously hidden

90
00:04:19,986 --> 00:04:22,170
behind Amazon's defaults.

91
00:04:22,170 --> 00:04:28,391
And once you see it, you can't unsee it:
service tier is not an implementation

92
00:04:28,391 --> 00:04:28,885
detail.

93
00:04:28,885 --> 00:04:32,557
It's a budgeting decision,
a latency decision,

94
00:04:32,557 --> 00:04:37,200
and honestly a product decision if your
team's workflow depends on it.

95
00:04:32,557 --> 00:04:37,200
So

96
00:04:37,200 --> 00:04:38,360
let's make this practical.

97
00:04:38,360 --> 00:04:41,001
Flex is the obvious fit for batch jobs,

98
00:04:41,001 --> 00:04:43,401
CI pipelines, overnight code review,

99
00:04:43,401 --> 00:04:46,445
summarization runs,
and background agentic tasks.

100
00:04:46,445 --> 00:04:51,071
The common trait is simple: no human is
blocked waiting on each turn.

101
00:04:51,071 --> 00:04:53,322
I want to grab "overnight code review"
there,

102
00:04:53,322 --> 00:04:55,080
because that's such a clean example.

103
00:04:55,080 --> 00:04:57,562
If the run starts at 11 p.

104
00:04:55,080 --> 00:04:57,562
m.

105
00:04:57,562 --> 00:04:59,556
and finishes a bit slower on flex,

106
00:04:59,556 --> 00:05:00,676
who cares?

107
00:05:00,676 --> 00:05:03,162
The laptop's shut, the cat's asleep,

108
00:05:03,162 --> 00:05:05,563
everyone's moved on.

109
00:05:03,162 --> 00:05:05,563
Exactly.

110
00:05:05,563 --> 00:05:06,362
Same with CI.

111
00:05:06,362 --> 00:05:11,002
If Claude Code is doing non-interactive
analysis in a pipeline,

112
00:05:11,002 --> 00:05:14,200
a few extra seconds per turn can be
totally acceptable.

113
00:05:14,200 --> 00:05:18,393
In fact, those are the jobs that quietly
burn money if you leave them

114
00:05:18,393 --> 00:05:22,231
on a premium lane, because they may
execute at scale and nobody notices

115
00:05:22,231 --> 00:05:24,832
the aggregate bill until
month-end.Let me try

116
00:05:22,231 --> 00:05:24,832
to explain

117
00:05:24,832 --> 00:05:25,280
that back.

118
00:05:25,280 --> 00:05:31,517
Flex is basically for work where latency
is elastic -- maybe not infinite,

119
00:05:31,517 --> 00:05:32,957
but elastic.

120
00:05:32,957 --> 00:05:36,986
You're saying, "take the cheaper seat,
we don't need first class." But

121
00:05:36,986 --> 00:05:39,442
if a person is sitting there actively
coding,

122
00:05:39,442 --> 00:05:43,875
that logic flips.

123
00:05:39,442 --> 00:05:43,875
Almost -- the missing piece is throughput
guarantee.

124
00:05:43,875 --> 00:05:48,211
Priority is not just "faster,
maybe." It's the tier for reduced latency

125
00:05:48,211 --> 00:05:49,548
and reserved capacity.

126
00:05:49,548 --> 00:05:51,789
So interactive coding sessions,

127
00:05:51,789 --> 00:05:55,178
shared team environments, or
organizations that are already paying for

128
00:05:55,178 --> 00:05:58,636
throughput guarantees should use priority
if they actually want Claude

129
00:05:58,636 --> 00:06:03,341
Code to benefit from that purchase.

130
00:05:58,636 --> 00:06:03,341
Reserved capacity is the phrase listeners

131
00:06:03,341 --> 00:06:04,758
should keep, I reckon.

132
00:06:04,758 --> 00:06:08,483
Because if your company already bought
the fancy restaurant booking and

133
00:06:08,483 --> 00:06:11,715
Claude Code still walks in asking for a
regular table,

134
00:06:11,715 --> 00:06:12,677
that's just silly.

135
00:06:12,677 --> 00:06:17,202
You're paying for the booking -- use the
booking.That's good.

136
00:06:17,202 --> 00:06:19,282
And this happens more than people think.

137
00:06:19,282 --> 00:06:24,152
An org can spend real money securing
priority-style capacity,

138
00:06:24,152 --> 00:06:27,037
but if the client doesn't send the right
header -- again,

139
00:06:27,037 --> 00:06:31,615
X-Amzn-Bedrock-Service-Tier -- then the
tool may not be using the lane

140
00:06:31,615 --> 00:06:34,122
the org intended.

141
00:06:31,615 --> 00:06:34,122
Now, caveat time,

142
00:06:34,122 --> 00:06:37,158
because this is where cloud stuff loves
to trip you over.

143
00:06:37,158 --> 00:06:42,254
Priority or flex may not exist for every
Claude model in every Bedrock

144
00:06:42,254 --> 00:06:42,756
region.

145
00:06:42,756 --> 00:06:44,277
It's not universal.

146
00:06:44,277 --> 00:06:49,531
Model and AWS region matter,
so the docs still matter.The token

147
00:06:49,531 --> 00:06:54,882
to underline there is "region." People
will test in us-east-whatever --

148
00:06:54,882 --> 00:06:59,405
I mean, pick a region -- then assume the
same tier exists somewhere else.

149
00:06:59,405 --> 00:07:02,446
But tier availability varies by model and
region,

150
00:07:02,446 --> 00:07:04,929
so your mental model has to be
conditional,

151
00:07:04,929 --> 00:07:09,959
not absolute.

152
00:07:04,929 --> 00:07:09,959
And that's where folks get caught by the
classic cloud mirage:

153
00:07:09,959 --> 00:07:13,927
"it worked in one place,
so it'll work everywhere." Nah.

154
00:07:13,927 --> 00:07:19,915
Fresh code, fresh region, fresh model --
even a kangaroo could trip over

155
00:07:19,915 --> 00:07:20,251
that.

156
00:07:20,251 --> 00:07:25,112
You still have to verify the combination
you actually run in production.

157
00:07:25,112 --> 00:07:29,712
Here's my slightly opinionated take:
enabling priority globally is an

158
00:07:29,712 --> 00:07:31,232
expensive foot-gun.

159
00:07:31,232 --> 00:07:35,686
If every Claude Code request in your org
gets shoved onto premium capacity

160
00:07:35,686 --> 00:07:39,592
by default, you'll absolutely improve
responsiveness in places that don't

161
00:07:39,592 --> 00:07:40,303
need it.

162
00:07:40,303 --> 00:07:44,565
That's waste, just in a nicer
suit.Yes -- but I wanna

163
00:07:44,565 --> 00:07:46,434
push back a bit on the other extreme.

164
00:07:46,434 --> 00:07:49,476
Leaving everything on standard on-demand,

165
00:07:49,476 --> 00:07:52,511
or just shrugging and sticking with
default forever,

166
00:07:52,511 --> 00:07:56,750
can cost more in human time than you save
in AWS spend.

167
00:07:56,750 --> 00:07:59,150
Especially in interactive coding.

168
00:07:59,150 --> 00:08:04,231
If a senior engineer loses flow ten times
a day because the assistant

169
00:08:04,231 --> 00:08:07,232
lags, that bill lands somewhere too.

170
00:08:07,232 --> 00:08:10,114
It's just hidden in salary, momentum,

171
00:08:10,114 --> 00:08:12,640
and grumpiness.

172
00:08:10,114 --> 00:08:12,640
That's fair.

173
00:08:12,640 --> 00:08:19,057
So maybe the right frame isn't "which
tier is best," it's "which waiting cost

174
00:08:12,640 --> 00:08:19,057
matters more here?"

175
00:08:19,057 --> 00:08:23,037
AWS cost on one side,
human latency cost on the other.

176
00:08:23,037 --> 00:08:25,925
Batch and background work usually favor
flex.

177
00:08:25,925 --> 00:08:28,721
Live collaborative work often favors
priority.

178
00:08:28,721 --> 00:08:32,715
Default is fine when you genuinely want
standard on-demand behavior,

179
00:08:32,715 --> 00:08:36,705
not when you're avoiding the
decision.That's the sting in this

180
00:08:36,705 --> 00:08:37,322
whole thing.

181
00:08:37,322 --> 00:08:42,521
Once a tool gives you a lever like
ANTHROPIC_BEDROCK_SERVICE_TIER,

182
00:08:42,521 --> 00:08:45,166
not choosing is still a choice.

183
00:08:45,166 --> 00:08:47,327
You're either paying with dollars,

184
00:08:47,327 --> 00:08:50,693
or paying with seconds,
or paying with a bit of both.

185
00:08:50,693 --> 00:08:55,218
And the sneaky part is the cloud will
happily let you stay vague about

186
00:08:55,218 --> 00:08:58,597
that for ages.Which is why I like
this update.

187
00:08:58,597 --> 00:09:01,237
Tiny surface area, big consequence.

188
00:09:01,237 --> 00:09:05,339
One header, three options,
and suddenly you have to decide what kind

189
00:09:05,339 --> 00:09:08,487
of work you think you're doing.
And that's a pretty good question

190
00:09:08,487 --> 00:09:15,197
to leave hanging, hey -- not "what model
are you using?" but "which lane should

191
00:09:08,487 --> 00:09:15,197
this job be in?"

192
00:09:15,197 --> 00:09:18,719
Cheers, James.

193
00:09:15,197 --> 00:09:18,719
See you next time.
