> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tensor9.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Blob Storage costs

> Compare Blob Storage backend choices using explicit service-adapter planning assumptions.

Tensor9 BYOC planning comparisons for `azure::1.0.0::blob-storage`, with backend choices shown together. Read [how to think about service-adapter costs](/byoc/service-adapters/debugging/costs/overview) for price scope and capacity qualification, or return to [additional services](/byoc/service-adapters/debugging/costs/additional-services).

## Azure Blob Storage → Cloud Storage

Origin API: `azure::1.0.0::blob-storage`. Target backend: `google::1.0.0::gcs`.

**Planning estimate with editable assumptions.** Unit rates, workload amplification and capacity assumptions are educated guesses awaiting verification. The displayed amounts are planning estimates, not verified provider list-price quotes or benchmark-qualified capacity. Region names identify the authored scenario assumptions.

**Designed mapping.** This cost model describes an intended adapter. Its estimated price does not establish a delivered or selectable backend.

### Azure Blob Storage · Stored data

**Planning estimate with editable assumptions.** These authored unit rates and capacity assumptions require provider-price verification and representative benchmarks. They do not constitute verified list-price quotes or evidence that an adapter is available.

Estimated monthly service charges from native source usage; no calculator input is required. Adapter hosting and Tensor9 fees are excluded. Source: Explicit source planning region; target: Explicit target planning region; currency: USD.

<div className="t9-diagram-scroll" role="region" aria-label="Service charge comparison" tabIndex={0}>
  <img className="t9-diagram-light" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBTdG9yZWQgZGF0YTwvdGl0bGU+CjxkZXNjIGlkPSJkZXNjIj5QbGFubmluZyBlc3RpbWF0ZXMgaW4gVVNEIGJ5IFN0b3JlZCBkYXRhLiBXb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS4gQ29zdCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gY29zdCBzaG93biBzZXBhcmF0ZWx5LiBFeGFjdCB2YWx1ZXMsIGFzc3VtcHRpb25zIGFuZCBleGNsdXNpb25zIGFwcGVhciBpbiB0aGUgYWRqYWNlbnQgdGFibGUgYW5kIHRleHQuIEFkYXB0ZXIgaG9zdGluZyBhbmQgVGVuc29yOSBmZWVzIGFyZSBleGNsdWRlZC48L2Rlc2M+CjxyZWN0IHdpZHRoPSI4NjAiIGhlaWdodD0iMTAwJSIgZmlsbD0iI2ZmZmZmZiIvPgo8ZyBmb250LWZhbWlseT0ic3lzdGVtLXVpLHNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTMiIGZpbGw9IiMxZjI5MzciPgo8dGV4dCB4PSI4NCIgeT0iMjYiIGZvbnQtc2l6ZT0iMTciIGZvbnQtd2VpZ2h0PSI2MDAiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBTdG9yZWQgZGF0YTwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wLjE8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjIyNC44IiB5Mj0iMjI0LjgiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI3NiIgeT0iMjI4LjgiIHRleHQtYW5jaG9yPSJlbmQiPjE8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjE4My42IiB5Mj0iMTgzLjYiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI3NiIgeT0iMTg3LjYiIHRleHQtYW5jaG9yPSJlbmQiPjEwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjEwMS4yIiB5Mj0iMTAxLjIiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI3NiIgeT0iMTA1LjIiIHRleHQtYW5jaG9yPSJlbmQiPjEwMDA8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjYwLjAiIHkyPSI2MC4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjY0LjAiIHRleHQtYW5jaG9yPSJlbmQiPjEwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiMxZjI5MzciLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDwvdGV4dD4KPGxpbmUgeDE9IjMxNi41IiB4Mj0iMzE2LjUiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSIzMTYuNSIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDwvdGV4dD4KPGxpbmUgeDE9IjQ3NyIgeDI9IjQ3NyIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjMWYyOTM3Ii8+Cjx0ZXh0IHg9IjQ3NyIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijc5OCIgeDI9Ijc5OCIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjMWYyOTM3Ii8+Cjx0ZXh0IHg9Ijc5OCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDAwMDwvdGV4dD4KPHBhdGggZD0iTTExNiAyODcgbDUgNiBtMiAtNiBsNSA2IiBzdHJva2U9IiMxZjI5MzciIGZpbGw9Im5vbmUiLz4KPHRleHQgeD0iNDQxIiB5PSIzMzYiIHRleHQtYW5jaG9yPSJtaWRkbGUiPlN0b3JlZCBkYXRhIChHaUItbW9udGgpPC90ZXh0Pgo8dGV4dCB4PSI4NCIgeT0iMzU4Ij5Xb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS48L3RleHQ+Cjxwb2x5bGluZSBwb2ludHM9Ijg0LDI5MCAxNTYsMjU1LjA5IDMxNi41LDIxMy44OSA0NzcsMTcyLjY5IDYzNy41LDEzMS40OSA3OTgsOTAuMjkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxMCIgY3g9IjE1NiIgY3k9IjI1NS4wOSIgcj0iMy41IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZjI5MzciIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAwIiBjeD0iMzE2LjUiIGN5PSIyMTMuODkiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI0NzciIGN5PSIxNzIuNjkiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNjM3LjUiIGN5PSIxMzEuNDkiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwMCIgY3g9Ijc5OCIgY3k9IjkwLjI5IiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxsaW5lIHgxPSI4NCIgeDI9IjExNCIgeTE9IjM4MCIgeTI9IjM4MCIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWRhc2hhcnJheT0iNiA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iMzg0Ij5PcmlnaW4gc2VydmljZTwvdGV4dD4KPHBvbHlsaW5lIGRhdGEtc2VyaWVzPSJuYXRpdmUiIHBvaW50cz0iODQsMjkwIDE1NiwyNTMuNTk4IDMxNi41LDIxMi4zOTggNDc3LDE3MS4xOTggNjM3LjUsMTI5Ljk5OCA3OTgsODguNzk4IiBmaWxsPSJub25lIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIwIiBjeD0iODQiIGN5PSIyOTAiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMCIgY3g9IjE1NiIgY3k9IjI1My41OTgiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAiIGN4PSIzMTYuNSIgY3k9IjIxMi4zOTgiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAwIiBjeD0iNDc3IiBjeT0iMTcxLjE5OCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNjM3LjUiIGN5PSIxMjkuOTk4IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwMDAwIiBjeD0iNzk4IiBjeT0iODguNzk4IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8bGluZSB4MT0iODQiIHgyPSIxMTQiIHkxPSI0MDIiIHkyPSI0MDIiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPHRleHQgeD0iMTIzIiB5PSI0MDYiPlBsYW5uaW5nIG5hdGl2ZSBiYWNrZW5kPC90ZXh0Pgo8L2c+PC9zdmc+Cg==" alt="Azure Blob Storage · Stored data: monthly service charges by Stored data. Exact values are in the following table." />

  <img className="t9-diagram-dark" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBTdG9yZWQgZGF0YTwvdGl0bGU+CjxkZXNjIGlkPSJkZXNjIj5QbGFubmluZyBlc3RpbWF0ZXMgaW4gVVNEIGJ5IFN0b3JlZCBkYXRhLiBXb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS4gQ29zdCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gY29zdCBzaG93biBzZXBhcmF0ZWx5LiBFeGFjdCB2YWx1ZXMsIGFzc3VtcHRpb25zIGFuZCBleGNsdXNpb25zIGFwcGVhciBpbiB0aGUgYWRqYWNlbnQgdGFibGUgYW5kIHRleHQuIEFkYXB0ZXIgaG9zdGluZyBhbmQgVGVuc29yOSBmZWVzIGFyZSBleGNsdWRlZC48L2Rlc2M+CjxyZWN0IHdpZHRoPSI4NjAiIGhlaWdodD0iMTAwJSIgZmlsbD0iIzExMTgyNyIvPgo8ZyBmb250LWZhbWlseT0ic3lzdGVtLXVpLHNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTMiIGZpbGw9IiNlNWU3ZWIiPgo8dGV4dCB4PSI4NCIgeT0iMjYiIGZvbnQtc2l6ZT0iMTciIGZvbnQtd2VpZ2h0PSI2MDAiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBTdG9yZWQgZGF0YTwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wLjE8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjIyNC44IiB5Mj0iMjI0LjgiIHN0cm9rZT0iIzM3NDE1MSIvPgo8dGV4dCB4PSI3NiIgeT0iMjI4LjgiIHRleHQtYW5jaG9yPSJlbmQiPjE8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjE4My42IiB5Mj0iMTgzLjYiIHN0cm9rZT0iIzM3NDE1MSIvPgo8dGV4dCB4PSI3NiIgeT0iMTg3LjYiIHRleHQtYW5jaG9yPSJlbmQiPjEwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjEwMS4yIiB5Mj0iMTAxLjIiIHN0cm9rZT0iIzM3NDE1MSIvPgo8dGV4dCB4PSI3NiIgeT0iMTA1LjIiIHRleHQtYW5jaG9yPSJlbmQiPjEwMDA8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjYwLjAiIHkyPSI2MC4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjY0LjAiIHRleHQtYW5jaG9yPSJlbmQiPjEwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiNlNWU3ZWIiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDwvdGV4dD4KPGxpbmUgeDE9IjMxNi41IiB4Mj0iMzE2LjUiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSIzMTYuNSIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDwvdGV4dD4KPGxpbmUgeDE9IjQ3NyIgeDI9IjQ3NyIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9IjQ3NyIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijc5OCIgeDI9Ijc5OCIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc5OCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDAwMDwvdGV4dD4KPHBhdGggZD0iTTExNiAyODcgbDUgNiBtMiAtNiBsNSA2IiBzdHJva2U9IiNlNWU3ZWIiIGZpbGw9Im5vbmUiLz4KPHRleHQgeD0iNDQxIiB5PSIzMzYiIHRleHQtYW5jaG9yPSJtaWRkbGUiPlN0b3JlZCBkYXRhIChHaUItbW9udGgpPC90ZXh0Pgo8dGV4dCB4PSI4NCIgeT0iMzU4Ij5Xb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS48L3RleHQ+Cjxwb2x5bGluZSBwb2ludHM9Ijg0LDI5MCAxNTYsMjU1LjA5IDMxNi41LDIxMy44OSA0NzcsMTcyLjY5IDYzNy41LDEzMS40OSA3OTgsOTAuMjkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxMCIgY3g9IjE1NiIgY3k9IjI1NS4wOSIgcj0iMy41IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiNlNWU3ZWIiIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAwIiBjeD0iMzE2LjUiIGN5PSIyMTMuODkiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI0NzciIGN5PSIxNzIuNjkiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNjM3LjUiIGN5PSIxMzEuNDkiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwMCIgY3g9Ijc5OCIgY3k9IjkwLjI5IiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxsaW5lIHgxPSI4NCIgeDI9IjExNCIgeTE9IjM4MCIgeTI9IjM4MCIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWRhc2hhcnJheT0iNiA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iMzg0Ij5PcmlnaW4gc2VydmljZTwvdGV4dD4KPHBvbHlsaW5lIGRhdGEtc2VyaWVzPSJuYXRpdmUiIHBvaW50cz0iODQsMjkwIDE1NiwyNTMuNTk4IDMxNi41LDIxMi4zOTggNDc3LDE3MS4xOTggNjM3LjUsMTI5Ljk5OCA3OTgsODguNzk4IiBmaWxsPSJub25lIiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIwIiBjeD0iODQiIGN5PSIyOTAiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMCIgY3g9IjE1NiIgY3k9IjI1My41OTgiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAiIGN4PSIzMTYuNSIgY3k9IjIxMi4zOTgiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAwIiBjeD0iNDc3IiBjeT0iMTcxLjE5OCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNjM3LjUiIGN5PSIxMjkuOTk4IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwMDAwIiBjeD0iNzk4IiBjeT0iODguNzk4IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8bGluZSB4MT0iODQiIHgyPSIxMTQiIHkxPSI0MDIiIHkyPSI0MDIiIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPHRleHQgeD0iMTIzIiB5PSI0MDYiPlBsYW5uaW5nIG5hdGl2ZSBiYWNrZW5kPC90ZXh0Pgo8L2c+PC9zdmc+Cg==" alt="Azure Blob Storage · Stored data: monthly service charges by Stored data. Exact values are in the following table." />
</div>

Exact sampled model outputs in USD/month. Difference means target minus origin; a positive difference means the target costs more.

| Stored data (GiB-month) | Origin | Target scenario | Target | Difference |
| -: | -: | - | -: | -: |
| 0 | 0 | Planning native backend | 0 | 0 |
| 10 | 0.184 | Planning native backend | 0.2 | 0.016 |
| 100 | 1.84 | Planning native backend | 2 | 0.16 |
| 1000 | 18.4 | Planning native backend | 20 | 1.6 |
| 10000 | 184 | Planning native backend | 200 | 16 |
| 100000 | 1840 | Planning native backend | 2000 | 160 |

**Curve assumptions**

| Target scenario | Assumption | Value | Unit |
| - | - | -: | - |
| Planning native backend | Origin price guess · Stored object data | 0.0184 | USD/GiB-month |
| Planning native backend | Origin price guess · Object writes | 0.000005 | USD/requests |
| Planning native backend | Origin price guess · Object reads | 0.0000004 | USD/requests |
| Planning native backend | Origin price guess · Billable origin network transfer | 0.09 | USD/GiB |
| Planning native backend | Representative transferred object size | 1048576 | bytes |
| Planning native backend | Target requests per write | 1 | requests |
| Planning native backend | Target requests per read | 1 | requests |
| Planning native backend | Target price guess · read | 0.0000004 | USD/read |
| Planning native backend | Target price guess · write | 0.000005 | USD/write |
| Planning native backend | Target price guess · provider operation | 0 | USD/provider operation |
| Planning native backend | Target price guess · GiB-month | 0.02 | USD/GiB-month |
| Planning native backend | Target price guess · published GiB | 0 | USD/published GiB |
| Planning native backend | Target price guess · delivered GiB | 0 | USD/delivered GiB |
| Planning native backend | Target price guess · network GiB | 0.09 | USD/network GiB |
| Planning native backend | Target price guess · replica GiB-month | 0 | USD/replica GiB-month |
| Planning native backend | Target price guess · vCPU-hour | 0 | USD/vCPU-hour |
| Planning native backend | Target price guess · GiB-hour | 0 | USD/GiB-hour |
| Planning native backend | Target price guess · resource-hour | 0 | USD/resource-hour |
| Planning native backend | Target price guess · resource-month | 0 | USD/resource-month |
| Planning native backend | Target price guess · input token | 0 | USD/input token |
| Planning native backend | Target price guess · output token | 0 | USD/output token |
| Planning native backend | Approximate target service minimum | 0 | USD/month |
| Planning native backend | Minimum primary CPU | 2 | vCPU |
| Planning native backend | Minimum primary RAM | 8 | GiB |
| Planning native backend | Minimum primary disk | 100 | GiB |
| Planning native backend | Additional full-price standby copy | 0 | 0 or 1 |
| Planning native backend | Allocated share of provisioned cost | 1 | fraction |
| Planning native backend | Planning read/write work per vCPU-second | 1000 | operations/vCPU-second |
| Planning native backend | Planning peak / mean work | 2 | multiplier |
| Planning native backend | Planning primary CPU utilization | 0.7 | fraction |
| Planning native backend | Resident state reserved in RAM | 0.1 | fraction |
| Planning native backend | Planning disk utilization | 0.7 | fraction |
| Planning native backend | Maintenance and log disk reserve | 20 | GiB |
| Planning native backend | Staging database CPU unit-price guess | 0.0413 | USD/vCPU-hour |
| Planning native backend | Staging database RAM unit-price guess | 0.007 | USD/GiB-hour |
| Planning native backend | Staging database disk unit-price guess | 0.17 | USD/GiB-month |
| Planning native backend | Dependent object sink storage price guess | 0.023 | USD/GiB-month |
| Planning native backend | Dependent object sink write price guess | 0.000005 | USD/write |

* Request meters remain at their independently authored defaults. Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote. Other native meters retain their explicitly displayed default quantities.
* Planning estimate · editable authored rates and sizing assumptions dated 2026-10-18; not verified provider prices. Explicit source planning region → Explicit target planning region, USD/month.
* Source prices are reference charges, not an invoice. Target lines cover selected service usage/configuration only; adapter hosting and Tensor9 fees are excluded.
* Explicit tariff samples are not performance measurements or capacity qualification. No interpolation or break-even guarantee is implied.
* Variant assumptions show the first axis sample; any axis-dependent configuration is described by this curve's workload note.
* Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote.
* Default-zero rates are explicit assumptions, not evidence that the deployed service or resource is free.
* Provisioned-unit minimums use an editable approximate allocation floor. Modeled target service cost is max(usage/allocation, minimum), with billable network, durable staging and dependent sinks added separately; actual RU/TU sizing, scaling increments and throughput remain unqualified.
* Durable staging is priced once: provisioned targets include adapter state in their selected allocation; native targets add a separate staging allocation when required. Adapter hosting is a separate allocation and must exclude resources already priced as staging, workers or target capacity.
* A declared adapter mapping and cost model do not establish implementation availability or service equivalence.
* This exact directed mapping has a design profile. Cost modeling does not establish an implemented or deployable adapter.
* Authored planning assumptions, not measured adapter capacity. Editable origin rates are illustrative tariff profiles, before free allowances and discounts.
* A cost scenario does not establish backend availability, protocol fidelity or production readiness. Registry serving status remains independent.
* Storage, request throughput and network are independent dimensions; a storage-only curve does not estimate a request mix.
* All target rates are editable authored planning guesses, not verified current list prices, customer discounts or benchmark evidence.
* Object storage prices logical GiB-month, actual target read/write operations and explicitly selected network transfer.

Cost scope: Modeled target native service and explicitly modeled state allocation; hosting and Tensor9 fees only when supplied.

Excluded costs and workload features:

* Additional network transfer, backups, KMS, one-time migration and operational labor unless an explicit meter includes them.
* Destination application execution and separately billed downstream services; supply those allocations separately.
* Replication beyond the selected target policy; archive classes and their minimum-duration/retrieval tariffs need a separate profile.
* Taxes, discounts, credits and free-tier allowances unless explicitly reflected in edited rates.
* Unmodeled dependent services, task execution and operations outside the selected workload family.

Planning assumptions authored: 2026-10-18. Model: `plan-4e30ef12eaf1c32fc4e3e71dbaed11bbc86ded28` / `2026-10-18.planning.1`. Curve: `workload-1`.

### Azure Blob Storage · Object writes

**Planning estimate with editable assumptions.** These authored unit rates and capacity assumptions require provider-price verification and representative benchmarks. They do not constitute verified list-price quotes or evidence that an adapter is available.

Estimated monthly service charges from native source usage; no calculator input is required. Adapter hosting and Tensor9 fees are excluded. Source: Explicit source planning region; target: Explicit target planning region; currency: USD.

<div className="t9-diagram-scroll" role="region" aria-label="Service charge comparison" tabIndex={0}>
  <img className="t9-diagram-light" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBPYmplY3Qgd3JpdGVzPC90aXRsZT4KPGRlc2MgaWQ9ImRlc2MiPlBsYW5uaW5nIGVzdGltYXRlcyBpbiBVU0QgYnkgT2JqZWN0IHdyaXRlcy4gV29ya2xvYWQgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIHNob3duIHNlcGFyYXRlbHkuIENvc3QgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIGNvc3Qgc2hvd24gc2VwYXJhdGVseS4gRXhhY3QgdmFsdWVzLCBhc3N1bXB0aW9ucyBhbmQgZXhjbHVzaW9ucyBhcHBlYXIgaW4gdGhlIGFkamFjZW50IHRhYmxlIGFuZCB0ZXh0LiBBZGFwdGVyIGhvc3RpbmcgYW5kIFRlbnNvcjkgZmVlcyBhcmUgZXhjbHVkZWQuPC9kZXNjPgo8cmVjdCB3aWR0aD0iODYwIiBoZWlnaHQ9IjEwMCUiIGZpbGw9IiNmZmZmZmYiLz4KPGcgZm9udC1mYW1pbHk9InN5c3RlbS11aSxzYW5zLXNlcmlmIiBmb250LXNpemU9IjEzIiBmaWxsPSIjMWYyOTM3Ij4KPHRleHQgeD0iODQiIHk9IjI2IiBmb250LXNpemU9IjE3IiBmb250LXdlaWdodD0iNjAwIj5BenVyZSBCbG9iIFN0b3JhZ2UgwrcgT2JqZWN0IHdyaXRlczwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMjI0LjgiIHkyPSIyMjQuOCIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIyMjguOCIgdGV4dC1hbmNob3I9ImVuZCI+MTAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxODMuNiIgeTI9IjE4My42IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjE4Ny42IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMTAxLjIiIHkyPSIxMDEuMiIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIxMDUuMiIgdGV4dC1hbmNob3I9ImVuZCI+MTAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSI2MC4wIiB5Mj0iNjAuMCIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc2IiB5PSI2NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiMxZjI5MzciLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xPC90ZXh0Pgo8bGluZSB4MT0iMzE2LjUiIHgyPSIzMTYuNSIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjMWYyOTM3Ii8+Cjx0ZXh0IHg9IjMxNi41IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTA8L3RleHQ+CjxsaW5lIHgxPSI0NzciIHgyPSI0NzciIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI0NzciIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iNzk4IiB4Mj0iNzk4IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNzk4IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTAwMDA8L3RleHQ+CjxwYXRoIGQ9Ik0xMTYgMjg3IGw1IDYgbTIgLTYgbDUgNiIgc3Ryb2tlPSIjMWYyOTM3IiBmaWxsPSJub25lIi8+Cjx0ZXh0IHg9IjQ0MSIgeT0iMzM2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIj5PYmplY3Qgd3JpdGVzIChwZXIgc2Vjb25kKTwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjM1OCI+V29ya2xvYWQgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIHNob3duIHNlcGFyYXRlbHkuPC90ZXh0Pgo8cG9seWxpbmUgcG9pbnRzPSI4NCwyOTAgMTU2LDI2MS4xMTQgMzE2LjUsMjE5LjkxNCA0NzcsMTc4LjcxNCA2MzcuNSwxMzcuNTE0IDc5OCw5Ni4zMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjYxLjExNCIgcj0iMy41IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZjI5MzciIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIxOS45MTQiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMCIgY3g9IjQ3NyIgY3k9IjE3OC43MTQiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjEzNy41MTQiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iOTYuMzE0IiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxsaW5lIHgxPSI4NCIgeDI9IjExNCIgeTE9IjM4MCIgeTI9IjM4MCIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWRhc2hhcnJheT0iNiA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iMzg0Ij5PcmlnaW4gc2VydmljZTwvdGV4dD4KPHBvbHlsaW5lIGRhdGEtc2VyaWVzPSJuYXRpdmUiIHBvaW50cz0iODQsMjkwIDE1NiwyNjEuMTE0IDMxNi41LDIxOS45MTQgNDc3LDE3OC43MTQgNjM3LjUsMTM3LjUxNCA3OTgsOTYuMzE0IiBmaWxsPSJub25lIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIwIiBjeD0iODQiIGN5PSIyOTAiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjYxLjExNCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwIiBjeD0iMzE2LjUiIGN5PSIyMTkuOTE0IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwIiBjeD0iNDc3IiBjeT0iMTc4LjcxNCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjEzNy41MTQiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAwMCIgY3g9Ijc5OCIgY3k9Ijk2LjMxNCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iMTE0IiB5MT0iNDAyIiB5Mj0iNDAyIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iNDA2Ij5QbGFubmluZyBuYXRpdmUgYmFja2VuZDwvdGV4dD4KPC9nPjwvc3ZnPgo=" alt="Azure Blob Storage · Object writes: monthly service charges by Object writes. Exact values are in the following table." />

  <img className="t9-diagram-dark" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBPYmplY3Qgd3JpdGVzPC90aXRsZT4KPGRlc2MgaWQ9ImRlc2MiPlBsYW5uaW5nIGVzdGltYXRlcyBpbiBVU0QgYnkgT2JqZWN0IHdyaXRlcy4gV29ya2xvYWQgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIHNob3duIHNlcGFyYXRlbHkuIENvc3QgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIGNvc3Qgc2hvd24gc2VwYXJhdGVseS4gRXhhY3QgdmFsdWVzLCBhc3N1bXB0aW9ucyBhbmQgZXhjbHVzaW9ucyBhcHBlYXIgaW4gdGhlIGFkamFjZW50IHRhYmxlIGFuZCB0ZXh0LiBBZGFwdGVyIGhvc3RpbmcgYW5kIFRlbnNvcjkgZmVlcyBhcmUgZXhjbHVkZWQuPC9kZXNjPgo8cmVjdCB3aWR0aD0iODYwIiBoZWlnaHQ9IjEwMCUiIGZpbGw9IiMxMTE4MjciLz4KPGcgZm9udC1mYW1pbHk9InN5c3RlbS11aSxzYW5zLXNlcmlmIiBmb250LXNpemU9IjEzIiBmaWxsPSIjZTVlN2ViIj4KPHRleHQgeD0iODQiIHk9IjI2IiBmb250LXNpemU9IjE3IiBmb250LXdlaWdodD0iNjAwIj5BenVyZSBCbG9iIFN0b3JhZ2UgwrcgT2JqZWN0IHdyaXRlczwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMjI0LjgiIHkyPSIyMjQuOCIgc3Ryb2tlPSIjMzc0MTUxIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIyMjguOCIgdGV4dC1hbmNob3I9ImVuZCI+MTAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxODMuNiIgeTI9IjE4My42IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjE4Ny42IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMTAxLjIiIHkyPSIxMDEuMiIgc3Ryb2tlPSIjMzc0MTUxIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIxMDUuMiIgdGV4dC1hbmNob3I9ImVuZCI+MTAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSI2MC4wIiB5Mj0iNjAuMCIgc3Ryb2tlPSIjMzc0MTUxIi8+Cjx0ZXh0IHg9Ijc2IiB5PSI2NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiNlNWU3ZWIiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xPC90ZXh0Pgo8bGluZSB4MT0iMzE2LjUiIHgyPSIzMTYuNSIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9IjMxNi41IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTA8L3RleHQ+CjxsaW5lIHgxPSI0NzciIHgyPSI0NzciIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI0NzciIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iNzk4IiB4Mj0iNzk4IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzk4IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTAwMDA8L3RleHQ+CjxwYXRoIGQ9Ik0xMTYgMjg3IGw1IDYgbTIgLTYgbDUgNiIgc3Ryb2tlPSIjZTVlN2ViIiBmaWxsPSJub25lIi8+Cjx0ZXh0IHg9IjQ0MSIgeT0iMzM2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIj5PYmplY3Qgd3JpdGVzIChwZXIgc2Vjb25kKTwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjM1OCI+V29ya2xvYWQgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIHNob3duIHNlcGFyYXRlbHkuPC90ZXh0Pgo8cG9seWxpbmUgcG9pbnRzPSI4NCwyOTAgMTU2LDI2MS4xMTQgMzE2LjUsMjE5LjkxNCA0NzcsMTc4LjcxNCA2MzcuNSwxMzcuNTE0IDc5OCw5Ni4zMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjYxLjExNCIgcj0iMy41IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiNlNWU3ZWIiIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIxOS45MTQiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMCIgY3g9IjQ3NyIgY3k9IjE3OC43MTQiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjEzNy41MTQiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iOTYuMzE0IiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxsaW5lIHgxPSI4NCIgeDI9IjExNCIgeTE9IjM4MCIgeTI9IjM4MCIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWRhc2hhcnJheT0iNiA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iMzg0Ij5PcmlnaW4gc2VydmljZTwvdGV4dD4KPHBvbHlsaW5lIGRhdGEtc2VyaWVzPSJuYXRpdmUiIHBvaW50cz0iODQsMjkwIDE1NiwyNjEuMTE0IDMxNi41LDIxOS45MTQgNDc3LDE3OC43MTQgNjM3LjUsMTM3LjUxNCA3OTgsOTYuMzE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIwIiBjeD0iODQiIGN5PSIyOTAiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjYxLjExNCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwIiBjeD0iMzE2LjUiIGN5PSIyMTkuOTE0IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwIiBjeD0iNDc3IiBjeT0iMTc4LjcxNCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjEzNy41MTQiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAwMCIgY3g9Ijc5OCIgY3k9Ijk2LjMxNCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iMTE0IiB5MT0iNDAyIiB5Mj0iNDAyIiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iNDA2Ij5QbGFubmluZyBuYXRpdmUgYmFja2VuZDwvdGV4dD4KPC9nPjwvc3ZnPgo=" alt="Azure Blob Storage · Object writes: monthly service charges by Object writes. Exact values are in the following table." />
</div>

Exact sampled model outputs in USD/month. Difference means target minus origin; a positive difference means the target costs more.

| Object writes (per second) | Origin | Target scenario | Target | Difference |
| -: | -: | - | -: | -: |
| 0 | 0 | Planning native backend | 0 | 0 |
| 1 | 13.14 | Planning native backend | 13.14 | 0 |
| 10 | 131.4 | Planning native backend | 131.4 | 0 |
| 100 | 1314 | Planning native backend | 1314 | 0 |
| 1000 | 13140 | Planning native backend | 13140 | 0 |
| 10000 | 131400 | Planning native backend | 131400 | 0 |

**Curve assumptions**

| Target scenario | Assumption | Value | Unit |
| - | - | -: | - |
| Planning native backend | Origin price guess · Stored object data | 0.0184 | USD/GiB-month |
| Planning native backend | Origin price guess · Object writes | 0.000005 | USD/requests |
| Planning native backend | Origin price guess · Object reads | 0.0000004 | USD/requests |
| Planning native backend | Origin price guess · Billable origin network transfer | 0.09 | USD/GiB |
| Planning native backend | Representative transferred object size | 1048576 | bytes |
| Planning native backend | Target requests per write | 1 | requests |
| Planning native backend | Target requests per read | 1 | requests |
| Planning native backend | Target price guess · read | 0.0000004 | USD/read |
| Planning native backend | Target price guess · write | 0.000005 | USD/write |
| Planning native backend | Target price guess · provider operation | 0 | USD/provider operation |
| Planning native backend | Target price guess · GiB-month | 0.02 | USD/GiB-month |
| Planning native backend | Target price guess · published GiB | 0 | USD/published GiB |
| Planning native backend | Target price guess · delivered GiB | 0 | USD/delivered GiB |
| Planning native backend | Target price guess · network GiB | 0.09 | USD/network GiB |
| Planning native backend | Target price guess · replica GiB-month | 0 | USD/replica GiB-month |
| Planning native backend | Target price guess · vCPU-hour | 0 | USD/vCPU-hour |
| Planning native backend | Target price guess · GiB-hour | 0 | USD/GiB-hour |
| Planning native backend | Target price guess · resource-hour | 0 | USD/resource-hour |
| Planning native backend | Target price guess · resource-month | 0 | USD/resource-month |
| Planning native backend | Target price guess · input token | 0 | USD/input token |
| Planning native backend | Target price guess · output token | 0 | USD/output token |
| Planning native backend | Approximate target service minimum | 0 | USD/month |
| Planning native backend | Minimum primary CPU | 2 | vCPU |
| Planning native backend | Minimum primary RAM | 8 | GiB |
| Planning native backend | Minimum primary disk | 100 | GiB |
| Planning native backend | Additional full-price standby copy | 0 | 0 or 1 |
| Planning native backend | Allocated share of provisioned cost | 1 | fraction |
| Planning native backend | Planning read/write work per vCPU-second | 1000 | operations/vCPU-second |
| Planning native backend | Planning peak / mean work | 2 | multiplier |
| Planning native backend | Planning primary CPU utilization | 0.7 | fraction |
| Planning native backend | Resident state reserved in RAM | 0.1 | fraction |
| Planning native backend | Planning disk utilization | 0.7 | fraction |
| Planning native backend | Maintenance and log disk reserve | 20 | GiB |
| Planning native backend | Staging database CPU unit-price guess | 0.0413 | USD/vCPU-hour |
| Planning native backend | Staging database RAM unit-price guess | 0.007 | USD/GiB-hour |
| Planning native backend | Staging database disk unit-price guess | 0.17 | USD/GiB-month |
| Planning native backend | Dependent object sink storage price guess | 0.023 | USD/GiB-month |
| Planning native backend | Dependent object sink write price guess | 0.000005 | USD/write |

* Stored GiB and reads stay at independent defaults. Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote. Other native meters retain their explicitly displayed default quantities.
* Planning estimate · editable authored rates and sizing assumptions dated 2026-10-18; not verified provider prices. Explicit source planning region → Explicit target planning region, USD/month.
* Source prices are reference charges, not an invoice. Target lines cover selected service usage/configuration only; adapter hosting and Tensor9 fees are excluded.
* Explicit tariff samples are not performance measurements or capacity qualification. No interpolation or break-even guarantee is implied.
* Variant assumptions show the first axis sample; any axis-dependent configuration is described by this curve's workload note.
* Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote.
* Default-zero rates are explicit assumptions, not evidence that the deployed service or resource is free.
* Provisioned-unit minimums use an editable approximate allocation floor. Modeled target service cost is max(usage/allocation, minimum), with billable network, durable staging and dependent sinks added separately; actual RU/TU sizing, scaling increments and throughput remain unqualified.
* Durable staging is priced once: provisioned targets include adapter state in their selected allocation; native targets add a separate staging allocation when required. Adapter hosting is a separate allocation and must exclude resources already priced as staging, workers or target capacity.
* A declared adapter mapping and cost model do not establish implementation availability or service equivalence.
* This exact directed mapping has a design profile. Cost modeling does not establish an implemented or deployable adapter.
* Authored planning assumptions, not measured adapter capacity. Editable origin rates are illustrative tariff profiles, before free allowances and discounts.
* A cost scenario does not establish backend availability, protocol fidelity or production readiness. Registry serving status remains independent.
* Storage, request throughput and network are independent dimensions; a storage-only curve does not estimate a request mix.
* All target rates are editable authored planning guesses, not verified current list prices, customer discounts or benchmark evidence.
* Object storage prices logical GiB-month, actual target read/write operations and explicitly selected network transfer.

Cost scope: Modeled target native service and explicitly modeled state allocation; hosting and Tensor9 fees only when supplied.

Excluded costs and workload features:

* Additional network transfer, backups, KMS, one-time migration and operational labor unless an explicit meter includes them.
* Destination application execution and separately billed downstream services; supply those allocations separately.
* Replication beyond the selected target policy; archive classes and their minimum-duration/retrieval tariffs need a separate profile.
* Taxes, discounts, credits and free-tier allowances unless explicitly reflected in edited rates.
* Unmodeled dependent services, task execution and operations outside the selected workload family.

Planning assumptions authored: 2026-10-18. Model: `plan-4e30ef12eaf1c32fc4e3e71dbaed11bbc86ded28` / `2026-10-18.planning.1`. Curve: `workload-2`.

### Azure Blob Storage · Object reads

**Planning estimate with editable assumptions.** These authored unit rates and capacity assumptions require provider-price verification and representative benchmarks. They do not constitute verified list-price quotes or evidence that an adapter is available.

Estimated monthly service charges from native source usage; no calculator input is required. Adapter hosting and Tensor9 fees are excluded. Source: Explicit source planning region; target: Explicit target planning region; currency: USD.

<div className="t9-diagram-scroll" role="region" aria-label="Service charge comparison" tabIndex={0}>
  <img className="t9-diagram-light" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBPYmplY3QgcmVhZHM8L3RpdGxlPgo8ZGVzYyBpZD0iZGVzYyI+UGxhbm5pbmcgZXN0aW1hdGVzIGluIFVTRCBieSBPYmplY3QgcmVhZHMuIFdvcmtsb2FkIGF4aXM6IGxvZ2FyaXRobWljIHBvc2l0aXZlIHZhbHVlczsgemVybyBzaG93biBzZXBhcmF0ZWx5LiBDb3N0IGF4aXM6IGxvZ2FyaXRobWljIHBvc2l0aXZlIHZhbHVlczsgemVybyBjb3N0IHNob3duIHNlcGFyYXRlbHkuIEV4YWN0IHZhbHVlcywgYXNzdW1wdGlvbnMgYW5kIGV4Y2x1c2lvbnMgYXBwZWFyIGluIHRoZSBhZGphY2VudCB0YWJsZSBhbmQgdGV4dC4gQWRhcHRlciBob3N0aW5nIGFuZCBUZW5zb3I5IGZlZXMgYXJlIGV4Y2x1ZGVkLjwvZGVzYz4KPHJlY3Qgd2lkdGg9Ijg2MCIgaGVpZ2h0PSIxMDAlIiBmaWxsPSIjZmZmZmZmIi8+CjxnIGZvbnQtZmFtaWx5PSJzeXN0ZW0tdWksc2Fucy1zZXJpZiIgZm9udC1zaXplPSIxMyIgZmlsbD0iIzFmMjkzNyI+Cjx0ZXh0IHg9Ijg0IiB5PSIyNiIgZm9udC1zaXplPSIxNyIgZm9udC13ZWlnaHQ9IjYwMCI+QXp1cmUgQmxvYiBTdG9yYWdlIMK3IE9iamVjdCByZWFkczwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyMjQuOCIgeTI9IjIyNC44IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjIyOC44IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMTgzLjYiIHkyPSIxODMuNiIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIxODcuNiIgdGV4dC1hbmNob3I9ImVuZCI+MTAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxMDEuMiIgeTI9IjEwMS4yIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjEwNS4yIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iNjAuMCIgeTI9IjYwLjAiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI3NiIgeT0iNjQuMCIgdGV4dC1hbmNob3I9ImVuZCI+MTAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiMxZjI5MzciLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xPC90ZXh0Pgo8bGluZSB4MT0iMzE2LjUiIHgyPSIzMTYuNSIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjMWYyOTM3Ii8+Cjx0ZXh0IHg9IjMxNi41IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTA8L3RleHQ+CjxsaW5lIHgxPSI0NzciIHgyPSI0NzciIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI0NzciIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iNzk4IiB4Mj0iNzk4IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNzk4IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTAwMDA8L3RleHQ+CjxwYXRoIGQ9Ik0xMTYgMjg3IGw1IDYgbTIgLTYgbDUgNiIgc3Ryb2tlPSIjMWYyOTM3IiBmaWxsPSJub25lIi8+Cjx0ZXh0IHg9IjQ0MSIgeT0iMzM2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIj5PYmplY3QgcmVhZHMgKHBlciBzZWNvbmQpPC90ZXh0Pgo8dGV4dCB4PSI4NCIgeT0iMzU4Ij5Xb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS48L3RleHQ+Cjxwb2x5bGluZSBwb2ludHM9Ijg0LDI5MCAxNTYsMjY1LjEwNyAzMTYuNSwyMjMuOTA3IDQ3NywxODIuNzA3IDYzNy41LDE0MS41MDcgNzk4LDEwMC4zMDciIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjY1LjEwNyIgcj0iMy41IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZjI5MzciIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIyMy45MDciIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMCIgY3g9IjQ3NyIgY3k9IjE4Mi43MDciIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjE0MS41MDciIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iMTAwLjMwNyIgcj0iMy41IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZjI5MzciIHN0cm9rZS13aWR0aD0iMiIvPgo8bGluZSB4MT0iODQiIHgyPSIxMTQiIHkxPSIzODAiIHkyPSIzODAiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8dGV4dCB4PSIxMjMiIHk9IjM4NCI+T3JpZ2luIHNlcnZpY2U8L3RleHQ+Cjxwb2x5bGluZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBwb2ludHM9Ijg0LDI5MCAxNTYsMjY1LjEwNyAzMTYuNSwyMjMuOTA3IDQ3NywxODIuNzA3IDYzNy41LDE0MS41MDcgNzk4LDEwMC4zMDciIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjAiIGN4PSI4NCIgY3k9IjI5MCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEiIGN4PSIxNTYiIGN5PSIyNjUuMTA3IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIyMy45MDciIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAiIGN4PSI0NzciIGN5PSIxODIuNzA3IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwMCIgY3g9IjYzNy41IiBjeT0iMTQxLjUwNyIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iMTAwLjMwNyIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iMTE0IiB5MT0iNDAyIiB5Mj0iNDAyIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iNDA2Ij5QbGFubmluZyBuYXRpdmUgYmFja2VuZDwvdGV4dD4KPC9nPjwvc3ZnPgo=" alt="Azure Blob Storage · Object reads: monthly service charges by Object reads. Exact values are in the following table." />

  <img className="t9-diagram-dark" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBPYmplY3QgcmVhZHM8L3RpdGxlPgo8ZGVzYyBpZD0iZGVzYyI+UGxhbm5pbmcgZXN0aW1hdGVzIGluIFVTRCBieSBPYmplY3QgcmVhZHMuIFdvcmtsb2FkIGF4aXM6IGxvZ2FyaXRobWljIHBvc2l0aXZlIHZhbHVlczsgemVybyBzaG93biBzZXBhcmF0ZWx5LiBDb3N0IGF4aXM6IGxvZ2FyaXRobWljIHBvc2l0aXZlIHZhbHVlczsgemVybyBjb3N0IHNob3duIHNlcGFyYXRlbHkuIEV4YWN0IHZhbHVlcywgYXNzdW1wdGlvbnMgYW5kIGV4Y2x1c2lvbnMgYXBwZWFyIGluIHRoZSBhZGphY2VudCB0YWJsZSBhbmQgdGV4dC4gQWRhcHRlciBob3N0aW5nIGFuZCBUZW5zb3I5IGZlZXMgYXJlIGV4Y2x1ZGVkLjwvZGVzYz4KPHJlY3Qgd2lkdGg9Ijg2MCIgaGVpZ2h0PSIxMDAlIiBmaWxsPSIjMTExODI3Ii8+CjxnIGZvbnQtZmFtaWx5PSJzeXN0ZW0tdWksc2Fucy1zZXJpZiIgZm9udC1zaXplPSIxMyIgZmlsbD0iI2U1ZTdlYiI+Cjx0ZXh0IHg9Ijg0IiB5PSIyNiIgZm9udC1zaXplPSIxNyIgZm9udC13ZWlnaHQ9IjYwMCI+QXp1cmUgQmxvYiBTdG9yYWdlIMK3IE9iamVjdCByZWFkczwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyMjQuOCIgeTI9IjIyNC44IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjIyOC44IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMTgzLjYiIHkyPSIxODMuNiIgc3Ryb2tlPSIjMzc0MTUxIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIxODcuNiIgdGV4dC1hbmNob3I9ImVuZCI+MTAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxMDEuMiIgeTI9IjEwMS4yIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjEwNS4yIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iNjAuMCIgeTI9IjYwLjAiIHN0cm9rZT0iIzM3NDE1MSIvPgo8dGV4dCB4PSI3NiIgeT0iNjQuMCIgdGV4dC1hbmNob3I9ImVuZCI+MTAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiNlNWU3ZWIiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xPC90ZXh0Pgo8bGluZSB4MT0iMzE2LjUiIHgyPSIzMTYuNSIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9IjMxNi41IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTA8L3RleHQ+CjxsaW5lIHgxPSI0NzciIHgyPSI0NzciIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI0NzciIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iNzk4IiB4Mj0iNzk4IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzk4IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTAwMDA8L3RleHQ+CjxwYXRoIGQ9Ik0xMTYgMjg3IGw1IDYgbTIgLTYgbDUgNiIgc3Ryb2tlPSIjZTVlN2ViIiBmaWxsPSJub25lIi8+Cjx0ZXh0IHg9IjQ0MSIgeT0iMzM2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIj5PYmplY3QgcmVhZHMgKHBlciBzZWNvbmQpPC90ZXh0Pgo8dGV4dCB4PSI4NCIgeT0iMzU4Ij5Xb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS48L3RleHQ+Cjxwb2x5bGluZSBwb2ludHM9Ijg0LDI5MCAxNTYsMjY1LjEwNyAzMTYuNSwyMjMuOTA3IDQ3NywxODIuNzA3IDYzNy41LDE0MS41MDcgNzk4LDEwMC4zMDciIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjY1LjEwNyIgcj0iMy41IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiNlNWU3ZWIiIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIyMy45MDciIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMCIgY3g9IjQ3NyIgY3k9IjE4Mi43MDciIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjE0MS41MDciIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iMTAwLjMwNyIgcj0iMy41IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiNlNWU3ZWIiIHN0cm9rZS13aWR0aD0iMiIvPgo8bGluZSB4MT0iODQiIHgyPSIxMTQiIHkxPSIzODAiIHkyPSIzODAiIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8dGV4dCB4PSIxMjMiIHk9IjM4NCI+T3JpZ2luIHNlcnZpY2U8L3RleHQ+Cjxwb2x5bGluZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBwb2ludHM9Ijg0LDI5MCAxNTYsMjY1LjEwNyAzMTYuNSwyMjMuOTA3IDQ3NywxODIuNzA3IDYzNy41LDE0MS41MDcgNzk4LDEwMC4zMDciIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjAiIGN4PSI4NCIgY3k9IjI5MCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEiIGN4PSIxNTYiIGN5PSIyNjUuMTA3IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIyMy45MDciIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAiIGN4PSI0NzciIGN5PSIxODIuNzA3IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwMCIgY3g9IjYzNy41IiBjeT0iMTQxLjUwNyIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iMTAwLjMwNyIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iMTE0IiB5MT0iNDAyIiB5Mj0iNDAyIiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iNDA2Ij5QbGFubmluZyBuYXRpdmUgYmFja2VuZDwvdGV4dD4KPC9nPjwvc3ZnPgo=" alt="Azure Blob Storage · Object reads: monthly service charges by Object reads. Exact values are in the following table." />
</div>

Exact sampled model outputs in USD/month. Difference means target minus origin; a positive difference means the target costs more.

| Object reads (per second) | Origin | Target scenario | Target | Difference |
| -: | -: | - | -: | -: |
| 0 | 0 | Planning native backend | 0 | 0 |
| 1 | 1.0512 | Planning native backend | 1.0512 | 0 |
| 10 | 10.512 | Planning native backend | 10.512 | 0 |
| 100 | 105.12 | Planning native backend | 105.12 | 0 |
| 1000 | 1051.2 | Planning native backend | 1051.2 | 0 |
| 10000 | 10512 | Planning native backend | 10512 | 0 |

**Curve assumptions**

| Target scenario | Assumption | Value | Unit |
| - | - | -: | - |
| Planning native backend | Origin price guess · Stored object data | 0.0184 | USD/GiB-month |
| Planning native backend | Origin price guess · Object writes | 0.000005 | USD/requests |
| Planning native backend | Origin price guess · Object reads | 0.0000004 | USD/requests |
| Planning native backend | Origin price guess · Billable origin network transfer | 0.09 | USD/GiB |
| Planning native backend | Representative transferred object size | 1048576 | bytes |
| Planning native backend | Target requests per write | 1 | requests |
| Planning native backend | Target requests per read | 1 | requests |
| Planning native backend | Target price guess · read | 0.0000004 | USD/read |
| Planning native backend | Target price guess · write | 0.000005 | USD/write |
| Planning native backend | Target price guess · provider operation | 0 | USD/provider operation |
| Planning native backend | Target price guess · GiB-month | 0.02 | USD/GiB-month |
| Planning native backend | Target price guess · published GiB | 0 | USD/published GiB |
| Planning native backend | Target price guess · delivered GiB | 0 | USD/delivered GiB |
| Planning native backend | Target price guess · network GiB | 0.09 | USD/network GiB |
| Planning native backend | Target price guess · replica GiB-month | 0 | USD/replica GiB-month |
| Planning native backend | Target price guess · vCPU-hour | 0 | USD/vCPU-hour |
| Planning native backend | Target price guess · GiB-hour | 0 | USD/GiB-hour |
| Planning native backend | Target price guess · resource-hour | 0 | USD/resource-hour |
| Planning native backend | Target price guess · resource-month | 0 | USD/resource-month |
| Planning native backend | Target price guess · input token | 0 | USD/input token |
| Planning native backend | Target price guess · output token | 0 | USD/output token |
| Planning native backend | Approximate target service minimum | 0 | USD/month |
| Planning native backend | Minimum primary CPU | 2 | vCPU |
| Planning native backend | Minimum primary RAM | 8 | GiB |
| Planning native backend | Minimum primary disk | 100 | GiB |
| Planning native backend | Additional full-price standby copy | 0 | 0 or 1 |
| Planning native backend | Allocated share of provisioned cost | 1 | fraction |
| Planning native backend | Planning read/write work per vCPU-second | 1000 | operations/vCPU-second |
| Planning native backend | Planning peak / mean work | 2 | multiplier |
| Planning native backend | Planning primary CPU utilization | 0.7 | fraction |
| Planning native backend | Resident state reserved in RAM | 0.1 | fraction |
| Planning native backend | Planning disk utilization | 0.7 | fraction |
| Planning native backend | Maintenance and log disk reserve | 20 | GiB |
| Planning native backend | Staging database CPU unit-price guess | 0.0413 | USD/vCPU-hour |
| Planning native backend | Staging database RAM unit-price guess | 0.007 | USD/GiB-hour |
| Planning native backend | Staging database disk unit-price guess | 0.17 | USD/GiB-month |
| Planning native backend | Dependent object sink storage price guess | 0.023 | USD/GiB-month |
| Planning native backend | Dependent object sink write price guess | 0.000005 | USD/write |

* Stored GiB and writes stay at independent defaults. Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote. Other native meters retain their explicitly displayed default quantities.
* Planning estimate · editable authored rates and sizing assumptions dated 2026-10-18; not verified provider prices. Explicit source planning region → Explicit target planning region, USD/month.
* Source prices are reference charges, not an invoice. Target lines cover selected service usage/configuration only; adapter hosting and Tensor9 fees are excluded.
* Explicit tariff samples are not performance measurements or capacity qualification. No interpolation or break-even guarantee is implied.
* Variant assumptions show the first axis sample; any axis-dependent configuration is described by this curve's workload note.
* Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote.
* Default-zero rates are explicit assumptions, not evidence that the deployed service or resource is free.
* Provisioned-unit minimums use an editable approximate allocation floor. Modeled target service cost is max(usage/allocation, minimum), with billable network, durable staging and dependent sinks added separately; actual RU/TU sizing, scaling increments and throughput remain unqualified.
* Durable staging is priced once: provisioned targets include adapter state in their selected allocation; native targets add a separate staging allocation when required. Adapter hosting is a separate allocation and must exclude resources already priced as staging, workers or target capacity.
* A declared adapter mapping and cost model do not establish implementation availability or service equivalence.
* This exact directed mapping has a design profile. Cost modeling does not establish an implemented or deployable adapter.
* Authored planning assumptions, not measured adapter capacity. Editable origin rates are illustrative tariff profiles, before free allowances and discounts.
* A cost scenario does not establish backend availability, protocol fidelity or production readiness. Registry serving status remains independent.
* Storage, request throughput and network are independent dimensions; a storage-only curve does not estimate a request mix.
* All target rates are editable authored planning guesses, not verified current list prices, customer discounts or benchmark evidence.
* Object storage prices logical GiB-month, actual target read/write operations and explicitly selected network transfer.

Cost scope: Modeled target native service and explicitly modeled state allocation; hosting and Tensor9 fees only when supplied.

Excluded costs and workload features:

* Additional network transfer, backups, KMS, one-time migration and operational labor unless an explicit meter includes them.
* Destination application execution and separately billed downstream services; supply those allocations separately.
* Replication beyond the selected target policy; archive classes and their minimum-duration/retrieval tariffs need a separate profile.
* Taxes, discounts, credits and free-tier allowances unless explicitly reflected in edited rates.
* Unmodeled dependent services, task execution and operations outside the selected workload family.

Planning assumptions authored: 2026-10-18. Model: `plan-4e30ef12eaf1c32fc4e3e71dbaed11bbc86ded28` / `2026-10-18.planning.1`. Curve: `workload-3`.

## Azure Blob Storage → S3

Origin API: `azure::1.0.0::blob-storage`. Target backend: `aws::1.0.0::s3`.

**Planning estimate with editable assumptions.** Unit rates, workload amplification and capacity assumptions are educated guesses awaiting verification. The displayed amounts are planning estimates, not verified provider list-price quotes or benchmark-qualified capacity. Region names identify the authored scenario assumptions.

**Designed mapping.** This cost model describes an intended adapter. Its estimated price does not establish a delivered or selectable backend.

### Azure Blob Storage · Stored data

**Planning estimate with editable assumptions.** These authored unit rates and capacity assumptions require provider-price verification and representative benchmarks. They do not constitute verified list-price quotes or evidence that an adapter is available.

Estimated monthly service charges from native source usage; no calculator input is required. Adapter hosting and Tensor9 fees are excluded. Source: Explicit source planning region; target: Explicit target planning region; currency: USD.

<div className="t9-diagram-scroll" role="region" aria-label="Service charge comparison" tabIndex={0}>
  <img className="t9-diagram-light" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBTdG9yZWQgZGF0YTwvdGl0bGU+CjxkZXNjIGlkPSJkZXNjIj5QbGFubmluZyBlc3RpbWF0ZXMgaW4gVVNEIGJ5IFN0b3JlZCBkYXRhLiBXb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS4gQ29zdCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gY29zdCBzaG93biBzZXBhcmF0ZWx5LiBFeGFjdCB2YWx1ZXMsIGFzc3VtcHRpb25zIGFuZCBleGNsdXNpb25zIGFwcGVhciBpbiB0aGUgYWRqYWNlbnQgdGFibGUgYW5kIHRleHQuIEFkYXB0ZXIgaG9zdGluZyBhbmQgVGVuc29yOSBmZWVzIGFyZSBleGNsdWRlZC48L2Rlc2M+CjxyZWN0IHdpZHRoPSI4NjAiIGhlaWdodD0iMTAwJSIgZmlsbD0iI2ZmZmZmZiIvPgo8ZyBmb250LWZhbWlseT0ic3lzdGVtLXVpLHNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTMiIGZpbGw9IiMxZjI5MzciPgo8dGV4dCB4PSI4NCIgeT0iMjYiIGZvbnQtc2l6ZT0iMTciIGZvbnQtd2VpZ2h0PSI2MDAiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBTdG9yZWQgZGF0YTwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wLjE8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjIyNC44IiB5Mj0iMjI0LjgiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI3NiIgeT0iMjI4LjgiIHRleHQtYW5jaG9yPSJlbmQiPjE8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjE4My42IiB5Mj0iMTgzLjYiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI3NiIgeT0iMTg3LjYiIHRleHQtYW5jaG9yPSJlbmQiPjEwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjEwMS4yIiB5Mj0iMTAxLjIiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI3NiIgeT0iMTA1LjIiIHRleHQtYW5jaG9yPSJlbmQiPjEwMDA8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjYwLjAiIHkyPSI2MC4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjY0LjAiIHRleHQtYW5jaG9yPSJlbmQiPjEwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiMxZjI5MzciLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDwvdGV4dD4KPGxpbmUgeDE9IjMxNi41IiB4Mj0iMzE2LjUiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSIzMTYuNSIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDwvdGV4dD4KPGxpbmUgeDE9IjQ3NyIgeDI9IjQ3NyIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjMWYyOTM3Ii8+Cjx0ZXh0IHg9IjQ3NyIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijc5OCIgeDI9Ijc5OCIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjMWYyOTM3Ii8+Cjx0ZXh0IHg9Ijc5OCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDAwMDwvdGV4dD4KPHBhdGggZD0iTTExNiAyODcgbDUgNiBtMiAtNiBsNSA2IiBzdHJva2U9IiMxZjI5MzciIGZpbGw9Im5vbmUiLz4KPHRleHQgeD0iNDQxIiB5PSIzMzYiIHRleHQtYW5jaG9yPSJtaWRkbGUiPlN0b3JlZCBkYXRhIChHaUItbW9udGgpPC90ZXh0Pgo8dGV4dCB4PSI4NCIgeT0iMzU4Ij5Xb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS48L3RleHQ+Cjxwb2x5bGluZSBwb2ludHM9Ijg0LDI5MCAxNTYsMjU1LjA5IDMxNi41LDIxMy44OSA0NzcsMTcyLjY5IDYzNy41LDEzMS40OSA3OTgsOTAuMjkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxMCIgY3g9IjE1NiIgY3k9IjI1NS4wOSIgcj0iMy41IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZjI5MzciIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAwIiBjeD0iMzE2LjUiIGN5PSIyMTMuODkiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI0NzciIGN5PSIxNzIuNjkiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNjM3LjUiIGN5PSIxMzEuNDkiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwMCIgY3g9Ijc5OCIgY3k9IjkwLjI5IiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxsaW5lIHgxPSI4NCIgeDI9IjExNCIgeTE9IjM4MCIgeTI9IjM4MCIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWRhc2hhcnJheT0iNiA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iMzg0Ij5PcmlnaW4gc2VydmljZTwvdGV4dD4KPHBvbHlsaW5lIGRhdGEtc2VyaWVzPSJuYXRpdmUiIHBvaW50cz0iODQsMjkwIDE1NiwyNTMuNTk4IDMxNi41LDIxMi4zOTggNDc3LDE3MS4xOTggNjM3LjUsMTI5Ljk5OCA3OTgsODguNzk4IiBmaWxsPSJub25lIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIwIiBjeD0iODQiIGN5PSIyOTAiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMCIgY3g9IjE1NiIgY3k9IjI1My41OTgiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAiIGN4PSIzMTYuNSIgY3k9IjIxMi4zOTgiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAwIiBjeD0iNDc3IiBjeT0iMTcxLjE5OCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNjM3LjUiIGN5PSIxMjkuOTk4IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwMDAwIiBjeD0iNzk4IiBjeT0iODguNzk4IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8bGluZSB4MT0iODQiIHgyPSIxMTQiIHkxPSI0MDIiIHkyPSI0MDIiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPHRleHQgeD0iMTIzIiB5PSI0MDYiPlBsYW5uaW5nIG5hdGl2ZSBiYWNrZW5kPC90ZXh0Pgo8L2c+PC9zdmc+Cg==" alt="Azure Blob Storage · Stored data: monthly service charges by Stored data. Exact values are in the following table." />

  <img className="t9-diagram-dark" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBTdG9yZWQgZGF0YTwvdGl0bGU+CjxkZXNjIGlkPSJkZXNjIj5QbGFubmluZyBlc3RpbWF0ZXMgaW4gVVNEIGJ5IFN0b3JlZCBkYXRhLiBXb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS4gQ29zdCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gY29zdCBzaG93biBzZXBhcmF0ZWx5LiBFeGFjdCB2YWx1ZXMsIGFzc3VtcHRpb25zIGFuZCBleGNsdXNpb25zIGFwcGVhciBpbiB0aGUgYWRqYWNlbnQgdGFibGUgYW5kIHRleHQuIEFkYXB0ZXIgaG9zdGluZyBhbmQgVGVuc29yOSBmZWVzIGFyZSBleGNsdWRlZC48L2Rlc2M+CjxyZWN0IHdpZHRoPSI4NjAiIGhlaWdodD0iMTAwJSIgZmlsbD0iIzExMTgyNyIvPgo8ZyBmb250LWZhbWlseT0ic3lzdGVtLXVpLHNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTMiIGZpbGw9IiNlNWU3ZWIiPgo8dGV4dCB4PSI4NCIgeT0iMjYiIGZvbnQtc2l6ZT0iMTciIGZvbnQtd2VpZ2h0PSI2MDAiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBTdG9yZWQgZGF0YTwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wLjE8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjIyNC44IiB5Mj0iMjI0LjgiIHN0cm9rZT0iIzM3NDE1MSIvPgo8dGV4dCB4PSI3NiIgeT0iMjI4LjgiIHRleHQtYW5jaG9yPSJlbmQiPjE8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjE4My42IiB5Mj0iMTgzLjYiIHN0cm9rZT0iIzM3NDE1MSIvPgo8dGV4dCB4PSI3NiIgeT0iMTg3LjYiIHRleHQtYW5jaG9yPSJlbmQiPjEwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjEwMS4yIiB5Mj0iMTAxLjIiIHN0cm9rZT0iIzM3NDE1MSIvPgo8dGV4dCB4PSI3NiIgeT0iMTA1LjIiIHRleHQtYW5jaG9yPSJlbmQiPjEwMDA8L3RleHQ+CjxsaW5lIHgxPSI4NCIgeDI9Ijc5OCIgeTE9IjYwLjAiIHkyPSI2MC4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjY0LjAiIHRleHQtYW5jaG9yPSJlbmQiPjEwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiNlNWU3ZWIiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDwvdGV4dD4KPGxpbmUgeDE9IjMxNi41IiB4Mj0iMzE2LjUiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSIzMTYuNSIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDwvdGV4dD4KPGxpbmUgeDE9IjQ3NyIgeDI9IjQ3NyIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9IjQ3NyIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijc5OCIgeDI9Ijc5OCIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc5OCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjEwMDAwMDwvdGV4dD4KPHBhdGggZD0iTTExNiAyODcgbDUgNiBtMiAtNiBsNSA2IiBzdHJva2U9IiNlNWU3ZWIiIGZpbGw9Im5vbmUiLz4KPHRleHQgeD0iNDQxIiB5PSIzMzYiIHRleHQtYW5jaG9yPSJtaWRkbGUiPlN0b3JlZCBkYXRhIChHaUItbW9udGgpPC90ZXh0Pgo8dGV4dCB4PSI4NCIgeT0iMzU4Ij5Xb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS48L3RleHQ+Cjxwb2x5bGluZSBwb2ludHM9Ijg0LDI5MCAxNTYsMjU1LjA5IDMxNi41LDIxMy44OSA0NzcsMTcyLjY5IDYzNy41LDEzMS40OSA3OTgsOTAuMjkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxMCIgY3g9IjE1NiIgY3k9IjI1NS4wOSIgcj0iMy41IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiNlNWU3ZWIiIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAwIiBjeD0iMzE2LjUiIGN5PSIyMTMuODkiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI0NzciIGN5PSIxNzIuNjkiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNjM3LjUiIGN5PSIxMzEuNDkiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwMCIgY3g9Ijc5OCIgY3k9IjkwLjI5IiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxsaW5lIHgxPSI4NCIgeDI9IjExNCIgeTE9IjM4MCIgeTI9IjM4MCIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWRhc2hhcnJheT0iNiA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iMzg0Ij5PcmlnaW4gc2VydmljZTwvdGV4dD4KPHBvbHlsaW5lIGRhdGEtc2VyaWVzPSJuYXRpdmUiIHBvaW50cz0iODQsMjkwIDE1NiwyNTMuNTk4IDMxNi41LDIxMi4zOTggNDc3LDE3MS4xOTggNjM3LjUsMTI5Ljk5OCA3OTgsODguNzk4IiBmaWxsPSJub25lIiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIwIiBjeD0iODQiIGN5PSIyOTAiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMCIgY3g9IjE1NiIgY3k9IjI1My41OTgiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAiIGN4PSIzMTYuNSIgY3k9IjIxMi4zOTgiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAwIiBjeD0iNDc3IiBjeT0iMTcxLjE5OCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNjM3LjUiIGN5PSIxMjkuOTk4IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwMDAwIiBjeD0iNzk4IiBjeT0iODguNzk4IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8bGluZSB4MT0iODQiIHgyPSIxMTQiIHkxPSI0MDIiIHkyPSI0MDIiIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPHRleHQgeD0iMTIzIiB5PSI0MDYiPlBsYW5uaW5nIG5hdGl2ZSBiYWNrZW5kPC90ZXh0Pgo8L2c+PC9zdmc+Cg==" alt="Azure Blob Storage · Stored data: monthly service charges by Stored data. Exact values are in the following table." />
</div>

Exact sampled model outputs in USD/month. Difference means target minus origin; a positive difference means the target costs more.

| Stored data (GiB-month) | Origin | Target scenario | Target | Difference |
| -: | -: | - | -: | -: |
| 0 | 0 | Planning native backend | 0 | 0 |
| 10 | 0.184 | Planning native backend | 0.2 | 0.016 |
| 100 | 1.84 | Planning native backend | 2 | 0.16 |
| 1000 | 18.4 | Planning native backend | 20 | 1.6 |
| 10000 | 184 | Planning native backend | 200 | 16 |
| 100000 | 1840 | Planning native backend | 2000 | 160 |

**Curve assumptions**

| Target scenario | Assumption | Value | Unit |
| - | - | -: | - |
| Planning native backend | Origin price guess · Stored object data | 0.0184 | USD/GiB-month |
| Planning native backend | Origin price guess · Object writes | 0.000005 | USD/requests |
| Planning native backend | Origin price guess · Object reads | 0.0000004 | USD/requests |
| Planning native backend | Origin price guess · Billable origin network transfer | 0.09 | USD/GiB |
| Planning native backend | Representative transferred object size | 1048576 | bytes |
| Planning native backend | Target requests per write | 1 | requests |
| Planning native backend | Target requests per read | 1 | requests |
| Planning native backend | Target price guess · read | 0.0000004 | USD/read |
| Planning native backend | Target price guess · write | 0.000005 | USD/write |
| Planning native backend | Target price guess · provider operation | 0 | USD/provider operation |
| Planning native backend | Target price guess · GiB-month | 0.02 | USD/GiB-month |
| Planning native backend | Target price guess · published GiB | 0 | USD/published GiB |
| Planning native backend | Target price guess · delivered GiB | 0 | USD/delivered GiB |
| Planning native backend | Target price guess · network GiB | 0.09 | USD/network GiB |
| Planning native backend | Target price guess · replica GiB-month | 0 | USD/replica GiB-month |
| Planning native backend | Target price guess · vCPU-hour | 0 | USD/vCPU-hour |
| Planning native backend | Target price guess · GiB-hour | 0 | USD/GiB-hour |
| Planning native backend | Target price guess · resource-hour | 0 | USD/resource-hour |
| Planning native backend | Target price guess · resource-month | 0 | USD/resource-month |
| Planning native backend | Target price guess · input token | 0 | USD/input token |
| Planning native backend | Target price guess · output token | 0 | USD/output token |
| Planning native backend | Approximate target service minimum | 0 | USD/month |
| Planning native backend | Minimum primary CPU | 2 | vCPU |
| Planning native backend | Minimum primary RAM | 8 | GiB |
| Planning native backend | Minimum primary disk | 100 | GiB |
| Planning native backend | Additional full-price standby copy | 0 | 0 or 1 |
| Planning native backend | Allocated share of provisioned cost | 1 | fraction |
| Planning native backend | Planning read/write work per vCPU-second | 1000 | operations/vCPU-second |
| Planning native backend | Planning peak / mean work | 2 | multiplier |
| Planning native backend | Planning primary CPU utilization | 0.7 | fraction |
| Planning native backend | Resident state reserved in RAM | 0.1 | fraction |
| Planning native backend | Planning disk utilization | 0.7 | fraction |
| Planning native backend | Maintenance and log disk reserve | 20 | GiB |
| Planning native backend | Staging database CPU unit-price guess | 0.0413 | USD/vCPU-hour |
| Planning native backend | Staging database RAM unit-price guess | 0.007 | USD/GiB-hour |
| Planning native backend | Staging database disk unit-price guess | 0.17 | USD/GiB-month |
| Planning native backend | Dependent object sink storage price guess | 0.023 | USD/GiB-month |
| Planning native backend | Dependent object sink write price guess | 0.000005 | USD/write |

* Request meters remain at their independently authored defaults. Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote. Other native meters retain their explicitly displayed default quantities.
* Planning estimate · editable authored rates and sizing assumptions dated 2026-10-18; not verified provider prices. Explicit source planning region → Explicit target planning region, USD/month.
* Source prices are reference charges, not an invoice. Target lines cover selected service usage/configuration only; adapter hosting and Tensor9 fees are excluded.
* Explicit tariff samples are not performance measurements or capacity qualification. No interpolation or break-even guarantee is implied.
* Variant assumptions show the first axis sample; any axis-dependent configuration is described by this curve's workload note.
* Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote.
* Default-zero rates are explicit assumptions, not evidence that the deployed service or resource is free.
* Provisioned-unit minimums use an editable approximate allocation floor. Modeled target service cost is max(usage/allocation, minimum), with billable network, durable staging and dependent sinks added separately; actual RU/TU sizing, scaling increments and throughput remain unqualified.
* Durable staging is priced once: provisioned targets include adapter state in their selected allocation; native targets add a separate staging allocation when required. Adapter hosting is a separate allocation and must exclude resources already priced as staging, workers or target capacity.
* A declared adapter mapping and cost model do not establish implementation availability or service equivalence.
* This exact directed mapping has a design profile. Cost modeling does not establish an implemented or deployable adapter.
* Authored planning assumptions, not measured adapter capacity. Editable origin rates are illustrative tariff profiles, before free allowances and discounts.
* A cost scenario does not establish backend availability, protocol fidelity or production readiness. Registry serving status remains independent.
* Storage, request throughput and network are independent dimensions; a storage-only curve does not estimate a request mix.
* All target rates are editable authored planning guesses, not verified current list prices, customer discounts or benchmark evidence.
* Object storage prices logical GiB-month, actual target read/write operations and explicitly selected network transfer.

Cost scope: Modeled target native service and explicitly modeled state allocation; hosting and Tensor9 fees only when supplied.

Excluded costs and workload features:

* Additional network transfer, backups, KMS, one-time migration and operational labor unless an explicit meter includes them.
* Destination application execution and separately billed downstream services; supply those allocations separately.
* Replication beyond the selected target policy; archive classes and their minimum-duration/retrieval tariffs need a separate profile.
* Taxes, discounts, credits and free-tier allowances unless explicitly reflected in edited rates.
* Unmodeled dependent services, task execution and operations outside the selected workload family.

Planning assumptions authored: 2026-10-18. Model: `plan-e7582769b7348633540c3567cbf0926b3bc3c917` / `2026-10-18.planning.1`. Curve: `workload-1`.

### Azure Blob Storage · Object writes

**Planning estimate with editable assumptions.** These authored unit rates and capacity assumptions require provider-price verification and representative benchmarks. They do not constitute verified list-price quotes or evidence that an adapter is available.

Estimated monthly service charges from native source usage; no calculator input is required. Adapter hosting and Tensor9 fees are excluded. Source: Explicit source planning region; target: Explicit target planning region; currency: USD.

<div className="t9-diagram-scroll" role="region" aria-label="Service charge comparison" tabIndex={0}>
  <img className="t9-diagram-light" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBPYmplY3Qgd3JpdGVzPC90aXRsZT4KPGRlc2MgaWQ9ImRlc2MiPlBsYW5uaW5nIGVzdGltYXRlcyBpbiBVU0QgYnkgT2JqZWN0IHdyaXRlcy4gV29ya2xvYWQgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIHNob3duIHNlcGFyYXRlbHkuIENvc3QgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIGNvc3Qgc2hvd24gc2VwYXJhdGVseS4gRXhhY3QgdmFsdWVzLCBhc3N1bXB0aW9ucyBhbmQgZXhjbHVzaW9ucyBhcHBlYXIgaW4gdGhlIGFkamFjZW50IHRhYmxlIGFuZCB0ZXh0LiBBZGFwdGVyIGhvc3RpbmcgYW5kIFRlbnNvcjkgZmVlcyBhcmUgZXhjbHVkZWQuPC9kZXNjPgo8cmVjdCB3aWR0aD0iODYwIiBoZWlnaHQ9IjEwMCUiIGZpbGw9IiNmZmZmZmYiLz4KPGcgZm9udC1mYW1pbHk9InN5c3RlbS11aSxzYW5zLXNlcmlmIiBmb250LXNpemU9IjEzIiBmaWxsPSIjMWYyOTM3Ij4KPHRleHQgeD0iODQiIHk9IjI2IiBmb250LXNpemU9IjE3IiBmb250LXdlaWdodD0iNjAwIj5BenVyZSBCbG9iIFN0b3JhZ2UgwrcgT2JqZWN0IHdyaXRlczwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMjI0LjgiIHkyPSIyMjQuOCIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIyMjguOCIgdGV4dC1hbmNob3I9ImVuZCI+MTAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxODMuNiIgeTI9IjE4My42IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjE4Ny42IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMTAxLjIiIHkyPSIxMDEuMiIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIxMDUuMiIgdGV4dC1hbmNob3I9ImVuZCI+MTAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSI2MC4wIiB5Mj0iNjAuMCIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc2IiB5PSI2NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiMxZjI5MzciLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xPC90ZXh0Pgo8bGluZSB4MT0iMzE2LjUiIHgyPSIzMTYuNSIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjMWYyOTM3Ii8+Cjx0ZXh0IHg9IjMxNi41IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTA8L3RleHQ+CjxsaW5lIHgxPSI0NzciIHgyPSI0NzciIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI0NzciIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iNzk4IiB4Mj0iNzk4IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNzk4IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTAwMDA8L3RleHQ+CjxwYXRoIGQ9Ik0xMTYgMjg3IGw1IDYgbTIgLTYgbDUgNiIgc3Ryb2tlPSIjMWYyOTM3IiBmaWxsPSJub25lIi8+Cjx0ZXh0IHg9IjQ0MSIgeT0iMzM2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIj5PYmplY3Qgd3JpdGVzIChwZXIgc2Vjb25kKTwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjM1OCI+V29ya2xvYWQgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIHNob3duIHNlcGFyYXRlbHkuPC90ZXh0Pgo8cG9seWxpbmUgcG9pbnRzPSI4NCwyOTAgMTU2LDI2MS4xMTQgMzE2LjUsMjE5LjkxNCA0NzcsMTc4LjcxNCA2MzcuNSwxMzcuNTE0IDc5OCw5Ni4zMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjYxLjExNCIgcj0iMy41IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZjI5MzciIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIxOS45MTQiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMCIgY3g9IjQ3NyIgY3k9IjE3OC43MTQiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjEzNy41MTQiIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iOTYuMzE0IiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxsaW5lIHgxPSI4NCIgeDI9IjExNCIgeTE9IjM4MCIgeTI9IjM4MCIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWRhc2hhcnJheT0iNiA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iMzg0Ij5PcmlnaW4gc2VydmljZTwvdGV4dD4KPHBvbHlsaW5lIGRhdGEtc2VyaWVzPSJuYXRpdmUiIHBvaW50cz0iODQsMjkwIDE1NiwyNjEuMTE0IDMxNi41LDIxOS45MTQgNDc3LDE3OC43MTQgNjM3LjUsMTM3LjUxNCA3OTgsOTYuMzE0IiBmaWxsPSJub25lIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIwIiBjeD0iODQiIGN5PSIyOTAiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjYxLjExNCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwIiBjeD0iMzE2LjUiIGN5PSIyMTkuOTE0IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwIiBjeD0iNDc3IiBjeT0iMTc4LjcxNCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjEzNy41MTQiIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAwMCIgY3g9Ijc5OCIgY3k9Ijk2LjMxNCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iMTE0IiB5MT0iNDAyIiB5Mj0iNDAyIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iNDA2Ij5QbGFubmluZyBuYXRpdmUgYmFja2VuZDwvdGV4dD4KPC9nPjwvc3ZnPgo=" alt="Azure Blob Storage · Object writes: monthly service charges by Object writes. Exact values are in the following table." />

  <img className="t9-diagram-dark" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBPYmplY3Qgd3JpdGVzPC90aXRsZT4KPGRlc2MgaWQ9ImRlc2MiPlBsYW5uaW5nIGVzdGltYXRlcyBpbiBVU0QgYnkgT2JqZWN0IHdyaXRlcy4gV29ya2xvYWQgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIHNob3duIHNlcGFyYXRlbHkuIENvc3QgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIGNvc3Qgc2hvd24gc2VwYXJhdGVseS4gRXhhY3QgdmFsdWVzLCBhc3N1bXB0aW9ucyBhbmQgZXhjbHVzaW9ucyBhcHBlYXIgaW4gdGhlIGFkamFjZW50IHRhYmxlIGFuZCB0ZXh0LiBBZGFwdGVyIGhvc3RpbmcgYW5kIFRlbnNvcjkgZmVlcyBhcmUgZXhjbHVkZWQuPC9kZXNjPgo8cmVjdCB3aWR0aD0iODYwIiBoZWlnaHQ9IjEwMCUiIGZpbGw9IiMxMTE4MjciLz4KPGcgZm9udC1mYW1pbHk9InN5c3RlbS11aSxzYW5zLXNlcmlmIiBmb250LXNpemU9IjEzIiBmaWxsPSIjZTVlN2ViIj4KPHRleHQgeD0iODQiIHk9IjI2IiBmb250LXNpemU9IjE3IiBmb250LXdlaWdodD0iNjAwIj5BenVyZSBCbG9iIFN0b3JhZ2UgwrcgT2JqZWN0IHdyaXRlczwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMjI0LjgiIHkyPSIyMjQuOCIgc3Ryb2tlPSIjMzc0MTUxIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIyMjguOCIgdGV4dC1hbmNob3I9ImVuZCI+MTAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxODMuNiIgeTI9IjE4My42IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjE4Ny42IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMTAxLjIiIHkyPSIxMDEuMiIgc3Ryb2tlPSIjMzc0MTUxIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIxMDUuMiIgdGV4dC1hbmNob3I9ImVuZCI+MTAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSI2MC4wIiB5Mj0iNjAuMCIgc3Ryb2tlPSIjMzc0MTUxIi8+Cjx0ZXh0IHg9Ijc2IiB5PSI2NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiNlNWU3ZWIiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xPC90ZXh0Pgo8bGluZSB4MT0iMzE2LjUiIHgyPSIzMTYuNSIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9IjMxNi41IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTA8L3RleHQ+CjxsaW5lIHgxPSI0NzciIHgyPSI0NzciIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI0NzciIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iNzk4IiB4Mj0iNzk4IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzk4IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTAwMDA8L3RleHQ+CjxwYXRoIGQ9Ik0xMTYgMjg3IGw1IDYgbTIgLTYgbDUgNiIgc3Ryb2tlPSIjZTVlN2ViIiBmaWxsPSJub25lIi8+Cjx0ZXh0IHg9IjQ0MSIgeT0iMzM2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIj5PYmplY3Qgd3JpdGVzIChwZXIgc2Vjb25kKTwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjM1OCI+V29ya2xvYWQgYXhpczogbG9nYXJpdGhtaWMgcG9zaXRpdmUgdmFsdWVzOyB6ZXJvIHNob3duIHNlcGFyYXRlbHkuPC90ZXh0Pgo8cG9seWxpbmUgcG9pbnRzPSI4NCwyOTAgMTU2LDI2MS4xMTQgMzE2LjUsMjE5LjkxNCA0NzcsMTc4LjcxNCA2MzcuNSwxMzcuNTE0IDc5OCw5Ni4zMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjYxLjExNCIgcj0iMy41IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiNlNWU3ZWIiIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIxOS45MTQiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMCIgY3g9IjQ3NyIgY3k9IjE3OC43MTQiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjEzNy41MTQiIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iOTYuMzE0IiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxsaW5lIHgxPSI4NCIgeDI9IjExNCIgeTE9IjM4MCIgeTI9IjM4MCIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWRhc2hhcnJheT0iNiA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iMzg0Ij5PcmlnaW4gc2VydmljZTwvdGV4dD4KPHBvbHlsaW5lIGRhdGEtc2VyaWVzPSJuYXRpdmUiIHBvaW50cz0iODQsMjkwIDE1NiwyNjEuMTE0IDMxNi41LDIxOS45MTQgNDc3LDE3OC43MTQgNjM3LjUsMTM3LjUxNCA3OTgsOTYuMzE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIwIiBjeD0iODQiIGN5PSIyOTAiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjYxLjExNCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwIiBjeD0iMzE2LjUiIGN5PSIyMTkuOTE0IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwIiBjeD0iNDc3IiBjeT0iMTc4LjcxNCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjEzNy41MTQiIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAwMCIgY3g9Ijc5OCIgY3k9Ijk2LjMxNCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iMTE0IiB5MT0iNDAyIiB5Mj0iNDAyIiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iNDA2Ij5QbGFubmluZyBuYXRpdmUgYmFja2VuZDwvdGV4dD4KPC9nPjwvc3ZnPgo=" alt="Azure Blob Storage · Object writes: monthly service charges by Object writes. Exact values are in the following table." />
</div>

Exact sampled model outputs in USD/month. Difference means target minus origin; a positive difference means the target costs more.

| Object writes (per second) | Origin | Target scenario | Target | Difference |
| -: | -: | - | -: | -: |
| 0 | 0 | Planning native backend | 0 | 0 |
| 1 | 13.14 | Planning native backend | 13.14 | 0 |
| 10 | 131.4 | Planning native backend | 131.4 | 0 |
| 100 | 1314 | Planning native backend | 1314 | 0 |
| 1000 | 13140 | Planning native backend | 13140 | 0 |
| 10000 | 131400 | Planning native backend | 131400 | 0 |

**Curve assumptions**

| Target scenario | Assumption | Value | Unit |
| - | - | -: | - |
| Planning native backend | Origin price guess · Stored object data | 0.0184 | USD/GiB-month |
| Planning native backend | Origin price guess · Object writes | 0.000005 | USD/requests |
| Planning native backend | Origin price guess · Object reads | 0.0000004 | USD/requests |
| Planning native backend | Origin price guess · Billable origin network transfer | 0.09 | USD/GiB |
| Planning native backend | Representative transferred object size | 1048576 | bytes |
| Planning native backend | Target requests per write | 1 | requests |
| Planning native backend | Target requests per read | 1 | requests |
| Planning native backend | Target price guess · read | 0.0000004 | USD/read |
| Planning native backend | Target price guess · write | 0.000005 | USD/write |
| Planning native backend | Target price guess · provider operation | 0 | USD/provider operation |
| Planning native backend | Target price guess · GiB-month | 0.02 | USD/GiB-month |
| Planning native backend | Target price guess · published GiB | 0 | USD/published GiB |
| Planning native backend | Target price guess · delivered GiB | 0 | USD/delivered GiB |
| Planning native backend | Target price guess · network GiB | 0.09 | USD/network GiB |
| Planning native backend | Target price guess · replica GiB-month | 0 | USD/replica GiB-month |
| Planning native backend | Target price guess · vCPU-hour | 0 | USD/vCPU-hour |
| Planning native backend | Target price guess · GiB-hour | 0 | USD/GiB-hour |
| Planning native backend | Target price guess · resource-hour | 0 | USD/resource-hour |
| Planning native backend | Target price guess · resource-month | 0 | USD/resource-month |
| Planning native backend | Target price guess · input token | 0 | USD/input token |
| Planning native backend | Target price guess · output token | 0 | USD/output token |
| Planning native backend | Approximate target service minimum | 0 | USD/month |
| Planning native backend | Minimum primary CPU | 2 | vCPU |
| Planning native backend | Minimum primary RAM | 8 | GiB |
| Planning native backend | Minimum primary disk | 100 | GiB |
| Planning native backend | Additional full-price standby copy | 0 | 0 or 1 |
| Planning native backend | Allocated share of provisioned cost | 1 | fraction |
| Planning native backend | Planning read/write work per vCPU-second | 1000 | operations/vCPU-second |
| Planning native backend | Planning peak / mean work | 2 | multiplier |
| Planning native backend | Planning primary CPU utilization | 0.7 | fraction |
| Planning native backend | Resident state reserved in RAM | 0.1 | fraction |
| Planning native backend | Planning disk utilization | 0.7 | fraction |
| Planning native backend | Maintenance and log disk reserve | 20 | GiB |
| Planning native backend | Staging database CPU unit-price guess | 0.0413 | USD/vCPU-hour |
| Planning native backend | Staging database RAM unit-price guess | 0.007 | USD/GiB-hour |
| Planning native backend | Staging database disk unit-price guess | 0.17 | USD/GiB-month |
| Planning native backend | Dependent object sink storage price guess | 0.023 | USD/GiB-month |
| Planning native backend | Dependent object sink write price guess | 0.000005 | USD/write |

* Stored GiB and reads stay at independent defaults. Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote. Other native meters retain their explicitly displayed default quantities.
* Planning estimate · editable authored rates and sizing assumptions dated 2026-10-18; not verified provider prices. Explicit source planning region → Explicit target planning region, USD/month.
* Source prices are reference charges, not an invoice. Target lines cover selected service usage/configuration only; adapter hosting and Tensor9 fees are excluded.
* Explicit tariff samples are not performance measurements or capacity qualification. No interpolation or break-even guarantee is implied.
* Variant assumptions show the first axis sample; any axis-dependent configuration is described by this curve's workload note.
* Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote.
* Default-zero rates are explicit assumptions, not evidence that the deployed service or resource is free.
* Provisioned-unit minimums use an editable approximate allocation floor. Modeled target service cost is max(usage/allocation, minimum), with billable network, durable staging and dependent sinks added separately; actual RU/TU sizing, scaling increments and throughput remain unqualified.
* Durable staging is priced once: provisioned targets include adapter state in their selected allocation; native targets add a separate staging allocation when required. Adapter hosting is a separate allocation and must exclude resources already priced as staging, workers or target capacity.
* A declared adapter mapping and cost model do not establish implementation availability or service equivalence.
* This exact directed mapping has a design profile. Cost modeling does not establish an implemented or deployable adapter.
* Authored planning assumptions, not measured adapter capacity. Editable origin rates are illustrative tariff profiles, before free allowances and discounts.
* A cost scenario does not establish backend availability, protocol fidelity or production readiness. Registry serving status remains independent.
* Storage, request throughput and network are independent dimensions; a storage-only curve does not estimate a request mix.
* All target rates are editable authored planning guesses, not verified current list prices, customer discounts or benchmark evidence.
* Object storage prices logical GiB-month, actual target read/write operations and explicitly selected network transfer.

Cost scope: Modeled target native service and explicitly modeled state allocation; hosting and Tensor9 fees only when supplied.

Excluded costs and workload features:

* Additional network transfer, backups, KMS, one-time migration and operational labor unless an explicit meter includes them.
* Destination application execution and separately billed downstream services; supply those allocations separately.
* Replication beyond the selected target policy; archive classes and their minimum-duration/retrieval tariffs need a separate profile.
* Taxes, discounts, credits and free-tier allowances unless explicitly reflected in edited rates.
* Unmodeled dependent services, task execution and operations outside the selected workload family.

Planning assumptions authored: 2026-10-18. Model: `plan-e7582769b7348633540c3567cbf0926b3bc3c917` / `2026-10-18.planning.1`. Curve: `workload-2`.

### Azure Blob Storage · Object reads

**Planning estimate with editable assumptions.** These authored unit rates and capacity assumptions require provider-price verification and representative benchmarks. They do not constitute verified list-price quotes or evidence that an adapter is available.

Estimated monthly service charges from native source usage; no calculator input is required. Adapter hosting and Tensor9 fees are excluded. Source: Explicit source planning region; target: Explicit target planning region; currency: USD.

<div className="t9-diagram-scroll" role="region" aria-label="Service charge comparison" tabIndex={0}>
  <img className="t9-diagram-light" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBPYmplY3QgcmVhZHM8L3RpdGxlPgo8ZGVzYyBpZD0iZGVzYyI+UGxhbm5pbmcgZXN0aW1hdGVzIGluIFVTRCBieSBPYmplY3QgcmVhZHMuIFdvcmtsb2FkIGF4aXM6IGxvZ2FyaXRobWljIHBvc2l0aXZlIHZhbHVlczsgemVybyBzaG93biBzZXBhcmF0ZWx5LiBDb3N0IGF4aXM6IGxvZ2FyaXRobWljIHBvc2l0aXZlIHZhbHVlczsgemVybyBjb3N0IHNob3duIHNlcGFyYXRlbHkuIEV4YWN0IHZhbHVlcywgYXNzdW1wdGlvbnMgYW5kIGV4Y2x1c2lvbnMgYXBwZWFyIGluIHRoZSBhZGphY2VudCB0YWJsZSBhbmQgdGV4dC4gQWRhcHRlciBob3N0aW5nIGFuZCBUZW5zb3I5IGZlZXMgYXJlIGV4Y2x1ZGVkLjwvZGVzYz4KPHJlY3Qgd2lkdGg9Ijg2MCIgaGVpZ2h0PSIxMDAlIiBmaWxsPSIjZmZmZmZmIi8+CjxnIGZvbnQtZmFtaWx5PSJzeXN0ZW0tdWksc2Fucy1zZXJpZiIgZm9udC1zaXplPSIxMyIgZmlsbD0iIzFmMjkzNyI+Cjx0ZXh0IHg9Ijg0IiB5PSIyNiIgZm9udC1zaXplPSIxNyIgZm9udC13ZWlnaHQ9IjYwMCI+QXp1cmUgQmxvYiBTdG9yYWdlIMK3IE9iamVjdCByZWFkczwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyMjQuOCIgeTI9IjIyNC44IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjIyOC44IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMTgzLjYiIHkyPSIxODMuNiIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIxODcuNiIgdGV4dC1hbmNob3I9ImVuZCI+MTAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxMDEuMiIgeTI9IjEwMS4yIiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzYiIHk9IjEwNS4yIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iNjAuMCIgeTI9IjYwLjAiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI3NiIgeT0iNjQuMCIgdGV4dC1hbmNob3I9ImVuZCI+MTAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiMxZjI5MzciLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xPC90ZXh0Pgo8bGluZSB4MT0iMzE2LjUiIHgyPSIzMTYuNSIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjMWYyOTM3Ii8+Cjx0ZXh0IHg9IjMxNi41IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTA8L3RleHQ+CjxsaW5lIHgxPSI0NzciIHgyPSI0NzciIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iIzFmMjkzNyIvPgo8dGV4dCB4PSI0NzciIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iNzk4IiB4Mj0iNzk4IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiMxZjI5MzciLz4KPHRleHQgeD0iNzk4IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTAwMDA8L3RleHQ+CjxwYXRoIGQ9Ik0xMTYgMjg3IGw1IDYgbTIgLTYgbDUgNiIgc3Ryb2tlPSIjMWYyOTM3IiBmaWxsPSJub25lIi8+Cjx0ZXh0IHg9IjQ0MSIgeT0iMzM2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIj5PYmplY3QgcmVhZHMgKHBlciBzZWNvbmQpPC90ZXh0Pgo8dGV4dCB4PSI4NCIgeT0iMzU4Ij5Xb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS48L3RleHQ+Cjxwb2x5bGluZSBwb2ludHM9Ijg0LDI5MCAxNTYsMjY1LjEwNyAzMTYuNSwyMjMuOTA3IDQ3NywxODIuNzA3IDYzNy41LDE0MS41MDcgNzk4LDEwMC4zMDciIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjY1LjEwNyIgcj0iMy41IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZjI5MzciIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIyMy45MDciIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMCIgY3g9IjQ3NyIgY3k9IjE4Mi43MDciIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjE0MS41MDciIHI9IjMuNSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWYyOTM3IiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iMTAwLjMwNyIgcj0iMy41IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZjI5MzciIHN0cm9rZS13aWR0aD0iMiIvPgo8bGluZSB4MT0iODQiIHgyPSIxMTQiIHkxPSIzODAiIHkyPSIzODAiIHN0cm9rZT0iIzFmMjkzNyIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8dGV4dCB4PSIxMjMiIHk9IjM4NCI+T3JpZ2luIHNlcnZpY2U8L3RleHQ+Cjxwb2x5bGluZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBwb2ludHM9Ijg0LDI5MCAxNTYsMjY1LjEwNyAzMTYuNSwyMjMuOTA3IDQ3NywxODIuNzA3IDYzNy41LDE0MS41MDcgNzk4LDEwMC4zMDciIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjAiIGN4PSI4NCIgY3k9IjI5MCIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEiIGN4PSIxNTYiIGN5PSIyNjUuMTA3IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIyMy45MDciIHI9IjQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzFkNGVkOCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAiIGN4PSI0NzciIGN5PSIxODIuNzA3IiByPSI0IiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwMCIgY3g9IjYzNy41IiBjeT0iMTQxLjUwNyIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iMTAwLjMwNyIgcj0iNCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSIjMWQ0ZWQ4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iMTE0IiB5MT0iNDAyIiB5Mj0iNDAyIiBzdHJva2U9IiMxZDRlZDgiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iNDA2Ij5QbGFubmluZyBuYXRpdmUgYmFja2VuZDwvdGV4dD4KPC9nPjwvc3ZnPgo=" alt="Azure Blob Storage · Object reads: monthly service charges by Object reads. Exact values are in the following table." />

  <img className="t9-diagram-dark" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4NjAgNDI2IiByb2xlPSJpbWciIGFyaWEtbGFiZWxsZWRieT0idGl0bGUgZGVzYyI+Cjx0aXRsZSBpZD0idGl0bGUiPkF6dXJlIEJsb2IgU3RvcmFnZSDCtyBPYmplY3QgcmVhZHM8L3RpdGxlPgo8ZGVzYyBpZD0iZGVzYyI+UGxhbm5pbmcgZXN0aW1hdGVzIGluIFVTRCBieSBPYmplY3QgcmVhZHMuIFdvcmtsb2FkIGF4aXM6IGxvZ2FyaXRobWljIHBvc2l0aXZlIHZhbHVlczsgemVybyBzaG93biBzZXBhcmF0ZWx5LiBDb3N0IGF4aXM6IGxvZ2FyaXRobWljIHBvc2l0aXZlIHZhbHVlczsgemVybyBjb3N0IHNob3duIHNlcGFyYXRlbHkuIEV4YWN0IHZhbHVlcywgYXNzdW1wdGlvbnMgYW5kIGV4Y2x1c2lvbnMgYXBwZWFyIGluIHRoZSBhZGphY2VudCB0YWJsZSBhbmQgdGV4dC4gQWRhcHRlciBob3N0aW5nIGFuZCBUZW5zb3I5IGZlZXMgYXJlIGV4Y2x1ZGVkLjwvZGVzYz4KPHJlY3Qgd2lkdGg9Ijg2MCIgaGVpZ2h0PSIxMDAlIiBmaWxsPSIjMTExODI3Ii8+CjxnIGZvbnQtZmFtaWx5PSJzeXN0ZW0tdWksc2Fucy1zZXJpZiIgZm9udC1zaXplPSIxMyIgZmlsbD0iI2U1ZTdlYiI+Cjx0ZXh0IHg9Ijg0IiB5PSIyNiIgZm9udC1zaXplPSIxNyIgZm9udC13ZWlnaHQ9IjYwMCI+QXp1cmUgQmxvYiBTdG9yYWdlIMK3IE9iamVjdCByZWFkczwvdGV4dD4KPHRleHQgeD0iODQiIHk9IjQ3Ij5Nb250aGx5IHNlcnZpY2UgY2hhcmdlcyAoVVNEOyBsb2dhcml0aG1pYyBjb3N0IGF4aXM7IHplcm8gc2VwYXJhdGUpPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyOTAuMCIgeTI9IjI5MC4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI5NC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4wPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyNjYuMCIgeTI9IjI2Ni4wIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjI3MC4wIiB0ZXh0LWFuY2hvcj0iZW5kIj4xPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIyMjQuOCIgeTI9IjIyNC44IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjIyOC44IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iMTgzLjYiIHkyPSIxODMuNiIgc3Ryb2tlPSIjMzc0MTUxIi8+Cjx0ZXh0IHg9Ijc2IiB5PSIxODcuNiIgdGV4dC1hbmNob3I9ImVuZCI+MTAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxNDIuNCIgeTI9IjE0Mi40IiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjE0Ni40IiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI3OTgiIHkxPSIxMDEuMiIgeTI9IjEwMS4yIiBzdHJva2U9IiMzNzQxNTEiLz4KPHRleHQgeD0iNzYiIHk9IjEwNS4yIiB0ZXh0LWFuY2hvcj0iZW5kIj4xMDAwMDwvdGV4dD4KPGxpbmUgeDE9Ijg0IiB4Mj0iNzk4IiB5MT0iNjAuMCIgeTI9IjYwLjAiIHN0cm9rZT0iIzM3NDE1MSIvPgo8dGV4dCB4PSI3NiIgeT0iNjQuMCIgdGV4dC1hbmNob3I9ImVuZCI+MTAwMDAwPC90ZXh0Pgo8bGluZSB4MT0iODQiIHgyPSI4NCIgeTE9IjYwIiB5Mj0iMjkwIiBzdHJva2U9IiNlNWU3ZWIiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iODQiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI4NCIgeT0iMzExIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkYXRhLWF4aXMtbGFiZWw9InRydWUiPjA8L3RleHQ+CjxsaW5lIHgxPSIxNTYiIHgyPSIxNTYiIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSIxNTYiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xPC90ZXh0Pgo8bGluZSB4MT0iMzE2LjUiIHgyPSIzMTYuNSIgeTE9IjI5MCIgeTI9IjI5NSIgc3Ryb2tlPSIjZTVlN2ViIi8+Cjx0ZXh0IHg9IjMxNi41IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTA8L3RleHQ+CjxsaW5lIHgxPSI0NzciIHgyPSI0NzciIHkxPSIyOTAiIHkyPSIyOTUiIHN0cm9rZT0iI2U1ZTdlYiIvPgo8dGV4dCB4PSI0NzciIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDA8L3RleHQ+CjxsaW5lIHgxPSI2MzcuNSIgeDI9IjYzNy41IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNjM3LjUiIHk9IjMxMSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZGF0YS1heGlzLWxhYmVsPSJ0cnVlIj4xMDAwPC90ZXh0Pgo8bGluZSB4MT0iNzk4IiB4Mj0iNzk4IiB5MT0iMjkwIiB5Mj0iMjk1IiBzdHJva2U9IiNlNWU3ZWIiLz4KPHRleHQgeD0iNzk4IiB5PSIzMTEiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGRhdGEtYXhpcy1sYWJlbD0idHJ1ZSI+MTAwMDA8L3RleHQ+CjxwYXRoIGQ9Ik0xMTYgMjg3IGw1IDYgbTIgLTYgbDUgNiIgc3Ryb2tlPSIjZTVlN2ViIiBmaWxsPSJub25lIi8+Cjx0ZXh0IHg9IjQ0MSIgeT0iMzM2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIj5PYmplY3QgcmVhZHMgKHBlciBzZWNvbmQpPC90ZXh0Pgo8dGV4dCB4PSI4NCIgeT0iMzU4Ij5Xb3JrbG9hZCBheGlzOiBsb2dhcml0aG1pYyBwb3NpdGl2ZSB2YWx1ZXM7IHplcm8gc2hvd24gc2VwYXJhdGVseS48L3RleHQ+Cjxwb2x5bGluZSBwb2ludHM9Ijg0LDI5MCAxNTYsMjY1LjEwNyAzMTYuNSwyMjMuOTA3IDQ3NywxODIuNzA3IDYzNy41LDE0MS41MDcgNzk4LDEwMC4zMDciIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMCIgY3g9Ijg0IiBjeT0iMjkwIiByPSIzLjUiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyIi8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im9yaWdpbiIgZGF0YS1heGlzPSIxIiBjeD0iMTU2IiBjeT0iMjY1LjEwNyIgcj0iMy41IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiNlNWU3ZWIiIHN0cm9rZS13aWR0aD0iMiIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJvcmlnaW4iIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIyMy45MDciIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMCIgY3g9IjQ3NyIgY3k9IjE4Mi43MDciIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAiIGN4PSI2MzcuNSIgY3k9IjE0MS41MDciIHI9IjMuNSIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjZTVlN2ViIiBzdHJva2Utd2lkdGg9IjIiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ib3JpZ2luIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iMTAwLjMwNyIgcj0iMy41IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiNlNWU3ZWIiIHN0cm9rZS13aWR0aD0iMiIvPgo8bGluZSB4MT0iODQiIHgyPSIxMTQiIHkxPSIzODAiIHkyPSIzODAiIHN0cm9rZT0iI2U1ZTdlYiIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjYgNCIvPgo8dGV4dCB4PSIxMjMiIHk9IjM4NCI+T3JpZ2luIHNlcnZpY2U8L3RleHQ+Cjxwb2x5bGluZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBwb2ludHM9Ijg0LDI5MCAxNTYsMjY1LjEwNyAzMTYuNSwyMjMuOTA3IDQ3NywxODIuNzA3IDYzNy41LDE0MS41MDcgNzk4LDEwMC4zMDciIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjAiIGN4PSI4NCIgY3k9IjI5MCIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEiIGN4PSIxNTYiIGN5PSIyNjUuMTA3IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAiIGN4PSIzMTYuNSIgY3k9IjIyMy45MDciIHI9IjQiIGZpbGw9IiMxMTE4MjciIHN0cm9rZT0iIzYwYTVmYSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+CjxjaXJjbGUgZGF0YS1zZXJpZXM9Im5hdGl2ZSIgZGF0YS1heGlzPSIxMDAiIGN4PSI0NzciIGN5PSIxODIuNzA3IiByPSI0IiBmaWxsPSIjMTExODI3IiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWRhc2hhcnJheT0iMTAgNCIvPgo8Y2lyY2xlIGRhdGEtc2VyaWVzPSJuYXRpdmUiIGRhdGEtYXhpcz0iMTAwMCIgY3g9IjYzNy41IiBjeT0iMTQxLjUwNyIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGNpcmNsZSBkYXRhLXNlcmllcz0ibmF0aXZlIiBkYXRhLWF4aXM9IjEwMDAwIiBjeD0iNzk4IiBjeT0iMTAwLjMwNyIgcj0iNCIgZmlsbD0iIzExMTgyNyIgc3Ryb2tlPSIjNjBhNWZhIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1kYXNoYXJyYXk9IjEwIDQiLz4KPGxpbmUgeDE9Ijg0IiB4Mj0iMTE0IiB5MT0iNDAyIiB5Mj0iNDAyIiBzdHJva2U9IiM2MGE1ZmEiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtZGFzaGFycmF5PSIxMCA0Ii8+Cjx0ZXh0IHg9IjEyMyIgeT0iNDA2Ij5QbGFubmluZyBuYXRpdmUgYmFja2VuZDwvdGV4dD4KPC9nPjwvc3ZnPgo=" alt="Azure Blob Storage · Object reads: monthly service charges by Object reads. Exact values are in the following table." />
</div>

Exact sampled model outputs in USD/month. Difference means target minus origin; a positive difference means the target costs more.

| Object reads (per second) | Origin | Target scenario | Target | Difference |
| -: | -: | - | -: | -: |
| 0 | 0 | Planning native backend | 0 | 0 |
| 1 | 1.0512 | Planning native backend | 1.0512 | 0 |
| 10 | 10.512 | Planning native backend | 10.512 | 0 |
| 100 | 105.12 | Planning native backend | 105.12 | 0 |
| 1000 | 1051.2 | Planning native backend | 1051.2 | 0 |
| 10000 | 10512 | Planning native backend | 10512 | 0 |

**Curve assumptions**

| Target scenario | Assumption | Value | Unit |
| - | - | -: | - |
| Planning native backend | Origin price guess · Stored object data | 0.0184 | USD/GiB-month |
| Planning native backend | Origin price guess · Object writes | 0.000005 | USD/requests |
| Planning native backend | Origin price guess · Object reads | 0.0000004 | USD/requests |
| Planning native backend | Origin price guess · Billable origin network transfer | 0.09 | USD/GiB |
| Planning native backend | Representative transferred object size | 1048576 | bytes |
| Planning native backend | Target requests per write | 1 | requests |
| Planning native backend | Target requests per read | 1 | requests |
| Planning native backend | Target price guess · read | 0.0000004 | USD/read |
| Planning native backend | Target price guess · write | 0.000005 | USD/write |
| Planning native backend | Target price guess · provider operation | 0 | USD/provider operation |
| Planning native backend | Target price guess · GiB-month | 0.02 | USD/GiB-month |
| Planning native backend | Target price guess · published GiB | 0 | USD/published GiB |
| Planning native backend | Target price guess · delivered GiB | 0 | USD/delivered GiB |
| Planning native backend | Target price guess · network GiB | 0.09 | USD/network GiB |
| Planning native backend | Target price guess · replica GiB-month | 0 | USD/replica GiB-month |
| Planning native backend | Target price guess · vCPU-hour | 0 | USD/vCPU-hour |
| Planning native backend | Target price guess · GiB-hour | 0 | USD/GiB-hour |
| Planning native backend | Target price guess · resource-hour | 0 | USD/resource-hour |
| Planning native backend | Target price guess · resource-month | 0 | USD/resource-month |
| Planning native backend | Target price guess · input token | 0 | USD/input token |
| Planning native backend | Target price guess · output token | 0 | USD/output token |
| Planning native backend | Approximate target service minimum | 0 | USD/month |
| Planning native backend | Minimum primary CPU | 2 | vCPU |
| Planning native backend | Minimum primary RAM | 8 | GiB |
| Planning native backend | Minimum primary disk | 100 | GiB |
| Planning native backend | Additional full-price standby copy | 0 | 0 or 1 |
| Planning native backend | Allocated share of provisioned cost | 1 | fraction |
| Planning native backend | Planning read/write work per vCPU-second | 1000 | operations/vCPU-second |
| Planning native backend | Planning peak / mean work | 2 | multiplier |
| Planning native backend | Planning primary CPU utilization | 0.7 | fraction |
| Planning native backend | Resident state reserved in RAM | 0.1 | fraction |
| Planning native backend | Planning disk utilization | 0.7 | fraction |
| Planning native backend | Maintenance and log disk reserve | 20 | GiB |
| Planning native backend | Staging database CPU unit-price guess | 0.0413 | USD/vCPU-hour |
| Planning native backend | Staging database RAM unit-price guess | 0.007 | USD/GiB-hour |
| Planning native backend | Staging database disk unit-price guess | 0.17 | USD/GiB-month |
| Planning native backend | Dependent object sink storage price guess | 0.023 | USD/GiB-month |
| Planning native backend | Dependent object sink write price guess | 0.000005 | USD/write |

* Stored GiB and writes stay at independent defaults. Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote. Other native meters retain their explicitly displayed default quantities.
* Planning estimate · editable authored rates and sizing assumptions dated 2026-10-18; not verified provider prices. Explicit source planning region → Explicit target planning region, USD/month.
* Source prices are reference charges, not an invoice. Target lines cover selected service usage/configuration only; adapter hosting and Tensor9 fees are excluded.
* Explicit tariff samples are not performance measurements or capacity qualification. No interpolation or break-even guarantee is implied.
* Variant assumptions show the first axis sample; any axis-dependent configuration is described by this curve's workload note.
* Editable authored planning guesses, not verified provider tariffs, benchmark measurements or a commercial quote.
* Default-zero rates are explicit assumptions, not evidence that the deployed service or resource is free.
* Provisioned-unit minimums use an editable approximate allocation floor. Modeled target service cost is max(usage/allocation, minimum), with billable network, durable staging and dependent sinks added separately; actual RU/TU sizing, scaling increments and throughput remain unqualified.
* Durable staging is priced once: provisioned targets include adapter state in their selected allocation; native targets add a separate staging allocation when required. Adapter hosting is a separate allocation and must exclude resources already priced as staging, workers or target capacity.
* A declared adapter mapping and cost model do not establish implementation availability or service equivalence.
* This exact directed mapping has a design profile. Cost modeling does not establish an implemented or deployable adapter.
* Authored planning assumptions, not measured adapter capacity. Editable origin rates are illustrative tariff profiles, before free allowances and discounts.
* A cost scenario does not establish backend availability, protocol fidelity or production readiness. Registry serving status remains independent.
* Storage, request throughput and network are independent dimensions; a storage-only curve does not estimate a request mix.
* All target rates are editable authored planning guesses, not verified current list prices, customer discounts or benchmark evidence.
* Object storage prices logical GiB-month, actual target read/write operations and explicitly selected network transfer.

Cost scope: Modeled target native service and explicitly modeled state allocation; hosting and Tensor9 fees only when supplied.

Excluded costs and workload features:

* Additional network transfer, backups, KMS, one-time migration and operational labor unless an explicit meter includes them.
* Destination application execution and separately billed downstream services; supply those allocations separately.
* Replication beyond the selected target policy; archive classes and their minimum-duration/retrieval tariffs need a separate profile.
* Taxes, discounts, credits and free-tier allowances unless explicitly reflected in edited rates.
* Unmodeled dependent services, task execution and operations outside the selected workload family.

Planning assumptions authored: 2026-10-18. Model: `plan-e7582769b7348633540c3567cbf0926b3bc3c917` / `2026-10-18.planning.1`. Curve: `workload-3`.

See the [service catalog](/byoc/service-adapters/catalog) for operation coverage, supported directions and backend limitations.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.