Cost breakdown for Sagemaker Unified Studio Domain and Project
This article explains cost incurred by an IDC based SMUS domain and a project created using "all capabilities" project profile when its unused or idle.
Executive Summary
This document analyzes the AWS costs incurred when a project is created using the "All Capabilities" project profile in Amazon SageMaker Unified Studio IDC based domain but remains idle (no active workloads, no queries, no notebook sessions). The primary finding is that the project-level idle cost is near zero, but the domain-level VPC networking infrastructure (NAT gateways and VPC endpoints) represents a fixed monthly cost of approximately $100–$350/month.
Blueprints Provisioned by the All Capabilities Profile
The All Capabilities project profile enables 9 blueprints, categorized as on-create (provisioned immediately) or on-demand (provisioned only when explicitly requested by a user).
On-Create Blueprints (auto-provisioned)
| Blueprint | What It Provisions | Idle Cost |
|---|---|---|
| Tooling | JupyterLab IDE config, CodeCommit repo connection | $0 |
| LakehouseDatabase | AWS Glue Data Catalog database | $0 |
| LakehouseCatalog | Lakehouse catalog integration | $0 |
| AmazonBedrockGenerativeAI | Bedrock model access configuration | $0 |
On-Demand Blueprints (NOT provisioned unless user requests)
| Blueprint | Cost If Provisioned & Idle | Auto-Provisioned? |
|---|---|---|
| RedshiftServerless | $0 (bills only when queries run) | No |
| EmrServerless | $0 (bills only when jobs run) | No |
| EmrOnEc2 | $$$ if cluster stays running | No |
| MLExperiments | Per-instance billing | No |
| Workflows (MWAA) | ~$358/month minimum if running | No |
Idle Cost Breakdown
1. VPC & Networking (Domain-Level, Always-On)
If the domain was created with Quick Setup, AWS provisions networking resources that incur costs 24/7 regardless of project activity:
· NAT Gateway: ~$32.40/month ($0.045/hr × 730 hrs)
· VPC Interface Endpoints: ~$7.30/month each per AZ ($0.01/hr × 730 hrs)
· SageMaker Unified Studio requires multiple endpoints (SageMaker API, STS, S3, Glue, etc.)
· Conservative estimate (5–10 endpoints across 3 AZs): $110–$220/month
· This is a domain-level cost shared across all projects
2. SageMaker Catalog (DataZone)
Within free tier for an idle project:
· Metadata storage: 20 MB free/month/account — idle project uses negligible metadata → $0
· API requests: 4,000 free/month/account — idle project generates minimal requests → $0
· Compute units: 0.2 free/month/account — no ingestion jobs if idle → $0
· Core APIs (CreateProject, Search, etc.) are always free
3. S3 Storage
Blueprint deployment artifacts and project file storage buckets: ~$0.50–$2/month (a few GB at $0.023/GB/month for S3 Standard).
4. IAM Roles & CloudFormation Stacks
$0 — no cost for existing IAM roles or CloudFormation stacks at rest.
Monthly Idle Cost Summary
| Cost Category | Estimated Monthly Cost |
|---|---|
| VPC Networking (NAT + Endpoints) | $100–$350 |
| SageMaker Catalog (DataZone) | $0 (within free tier) |
| S3 Storage (buckets) | $0.50–$2 |
| On-create blueprint resources | $0 |
| On-demand blueprints (not deployed) | $0 |
| TOTAL IDLE COST | ~$100–$350/month |
Key Takeaways
1. The project itself costs almost nothing when idle. On-create blueprints (Tooling, Lakehouse, Bedrock) provision only metadata/config — no running compute.
2. The real idle cost is the VPC networking infrastructure at the domain level (NAT gateways + VPC endpoints). This is shared across all projects in the domain.
- Analytics services (Redshift, EMR, MWAA, SageMaker AI) are all on-demand — they won't be provisioned unless a user explicitly creates them.
4. To minimize idle costs: delete unused projects. If no projects are active, consider deleting the domain and its VPC resources.
Recommendations
· Audit VPC endpoints — remove any that are not required for your use case.
· Use manual domain setup instead of Quick Setup to control which networking resources are created.
· Tag all resources with project/domain identifiers for cost allocation tracking.
· Set up AWS Budgets alerts to detect unexpected charges from idle resources.
· Document a cleanup procedure: Projects → Domain → S3 buckets → Glue databases → VPC stack.
· Define min and max idle timeout values for Jupyterlab Spaces. This can be by editing tooling parameters under project profile settings under domain administration.
References:
https://aws.amazon.com/blogs/big-data/use-amazon-sagemaker-custom-tags-for-project-resource-governance-and-cost-tracking/
https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/what-is-sagemaker-unified-studio.html
Enjoyed reading this content? Let the author know!
Your likes, comments, shares, and saves help creators reach more builders.
Loading recommendations
Loading article