AWS Glue 6.0 cut the Spark DPU rate 30% to $0.308, but only on 6.0
Summary. AWS Glue 6.0 became generally available on 21 August 2026 with what the announcement calls a 30% price reduction. The number is real and exact: an Apache Spark or Spark Streaming job on Glue 6.0 bills at $0.308 per DPU-hour in US East (N. Virginia), against $0.44 on Glue versions 2.0 through 5.1. Nothing about that rate applies to a job you do not migrate. Glue 5.1 remains the default version for jobs created without an explicit version, so a job you create today still bills at $0.44. Crawlers, Ray jobs, Python Shell jobs and provisioned development endpoints stay at $0.44 regardless of version. And the headline platform feature, Apache Iceberg format version 3, carries a limitation AWS documents but the launch post does not mention: a v3 table cannot be read by Athena SQL.
What changed on 21 August 2026
The AWS Glue versions table now lists Glue 6.0 running Spark 4.1.1, Python 3.13, Scala 2.13.17 on Java 17. Glue 5.1, the previous release and still the default, runs Spark 3.5.6, Python 3.11 and Scala 2.12.18. Open table format libraries move to Hudi 1.1.1, Iceberg 1.11.0 and Delta Lake 4.2.0. Iceberg 1.11.0 is the current Apache Iceberg release, so Glue is on the live line rather than trailing it.
Two runtime removals sit inside that upgrade and neither appears in the launch announcement. EMRFS is gone, and S3A is the sole S3 connector. The AWS SDK for Java v1 is gone, and only v2 ships.
The 30% lands on five meters, not on the bill
The Glue pricing page splits every affected meter into a pre-6.0 rate and a 6.0-and-above rate. The rates below are the live values for US East (N. Virginia), read from the pricing feed that renders the pricing page on 21 August 2026.
| Meter | Glue 5.1 and below | Glue 6.0 and above |
|---|---|---|
| Apache Spark or Spark Streaming job | $0.44 per DPU-hour | $0.308 per DPU-hour |
| Spark job on memory-optimized R workers | $0.52 per DPU-hour | $0.364 per DPU-hour |
| Spark job with flexible execution (Flex) | $0.29 per DPU-hour | $0.203 per DPU-hour |
| Interactive Session | $0.44 per DPU-hour | $0.308 per DPU-hour |
| Glue Data Quality in Glue ETL | $0.44 per DPU-hour | $0.308 per DPU-hour |
| Python Shell job | $0.44 per DPU-hour | $0.44 per DPU-hour |
| Ray job | $0.44 per M-DPU-hour | $0.44 per M-DPU-hour |
| Provisioned development endpoint | $0.44 per DPU-hour | $0.44 per DPU-hour |
| Data Catalog crawler run | $0.44 per DPU-hour | $0.44 per DPU-hour |
Each 6.0 rate is exactly 70% of its predecessor, so the 30% figure holds meter by meter where it applies at all. Flex keeps its relative discount: $0.203 against $0.308 is the same 34% gap Flex had at $0.29 against $0.44.
The bottom four rows are the ones to price before you plan a saving. Crawlers bill per DPU-hour with a 10-minute minimum per crawler run and got no reduction. Development endpoints bill for provisioned time with a 10-minute minimum, require a minimum of 2 DPUs, default to 5, and do not time out. If your Glue line item is mostly crawlers and a forgotten development endpoint, Glue 6.0 changes nothing for you.
The default version is still the expensive one
The AWS Glue versions table records that Glue 5.1 "is the default version for jobs created without specifying an AWS Glue version." That sentence is the whole cost story for most teams. A new job created through the console, an SDK call, or a CloudFormation or Terraform template that omits GlueVersion lands on 5.1 and bills at $0.44 per DPU-hour. The saving is opt-in and it is opt-in per job.
Spark and Spark Streaming job runs require a minimum of 2 DPUs, and Glue allocates 10 DPUs to each Spark job by default. At the default allocation, an hour of Spark on 5.1 costs $4.40 and the same hour on 6.0 costs $3.08. Run that job hourly for a month and the difference is roughly $950. Multiply across a fleet and the migration pays for itself quickly, which is the point. The trap is assuming it happened automatically.
AWS's own pages disagree about what Iceberg v3 added
The What's New post says Glue 6.0 "adds the VARIANT data type with automatic shredding, deletion vectors for high-performance row-level updates, geometry and geography data types, and flexible schema evolution through UNKNOWN data type and DEFAULT column values."
The migration guide says something different. Under the Apache Iceberg heading it lists VARIANT, nanosecond-precision timestamps and geospatial types as new, then states plainly that deletion vectors using Roaring Bitmaps in Puffin files, and row lineage tracking through first-row-id metadata, "are already supported by AWS Glue ETL since AWS Glue 5.1." The Glue versions table backs the migration guide on the 5.1 line, which already reads "Iceberg format version 3.0."
So one of the four capabilities the launch post credits to 6.0 shipped a release earlier. If you deferred a merge-on-read redesign because you were waiting for deletion vectors, you have been able to build it since 5.1. The Apache Iceberg specification lists the full v3 change set as nanosecond timestamps, unknown, variant, geometry and geography types, default column values, multi-argument transforms, row lineage tracking, binary deletion vectors and table encryption keys. Glue 6.0 does not ship all of it: the migration guide records that Iceberg native table encryption keys and Iceberg multi-argument transforms are not supported.
The limitation that decides whether you can use v3 at all
Four constraints sit in the Glue 6.0 known limitations, and the fourth is the one that reaches outside the Glue console.
The new Iceberg v3 data types work only with Spark DataFrames and will not work with DynamicFrames, which is Glue's own abstraction and the thing most existing Glue scripts are written against. Visual ETL in Glue Studio does not support the new v3 types, and the recommended path is to move those jobs to SageMaker Unified Studio. Fine-grained access control is not supported with VARIANT columns, which puts Glue 5.1's Spark-native FGAC and Glue 6.0's headline data type in direct tension.
Then the fourth. Iceberg tables written at format version 3 "cannot be read by Athena SQL," with the error text Cannot read unsupported version 3, and the guidance is to "Use Iceberg v2 for cross-engine compatibility with Athena." A table you upgrade to v3 to get VARIANT is a table your analysts can no longer query from Athena. That is not a Glue configuration problem you can fix in the job; it is a table-format decision that propagates to every engine reading the lake. The same trade-off shows up whenever a table format moves ahead of its readers, which is the practical half of any open table format decision between Iceberg and Delta Lake.
What actually breaks between 5.1 and 6.0
| Change in Glue 6.0 | Symptom if you skip it | Action before you switch the version |
|---|---|---|
| Scala 2.13.17 replaces 2.12.18 |
NoSuchMethodError or ClassNotFoundException from --extra-jars
|
Recompile every custom Scala or Java JAR against 2.13.17 and replace JavaConversions with CollectionConverters
|
| ANSI mode on by default | Integer overflow, invalid casts and out-of-bounds array access throw instead of returning NULL | Review SQL for ANSI impact, or set spark.sql.ansi.enabled=false
|
spark.sql.legacy.timeParserPolicy default changed |
Date and time parsing returns different results | Re-test every date parse against production data |
| EMRFS removed | S3 access fails or resolves to the wrong region | Remove EMRFS configuration; keep spark.hadoop.fs.s3a.endpoint.region if you set it |
| AWS SDK for Java v1 removed |
com.amazonaws.* imports fail to resolve |
Migrate Scala and Java jobs to software.amazon.awssdk.*; boto3 jobs need no change |
| Python 3.11 to 3.13 | Deprecated modules such as imp, cgi and cgitb fail on import |
Update code for 3.13 and move boto3 references from 1.40 to 1.42 |
--additional-python-modules deprecated |
Works today, no guarantee later | Move dependency management to --python-virtual-env
|
AWS points migrators at Generative AI upgrades for Apache Spark, which can lift jobs from Glue 2.0 and later to the current version, and at the Spark Troubleshooting Agent for failures. Neither removes the recompile-and-retest work on custom JARs. The real cost of this migration is usually the dependency graph, not the ETL code.
One more thing worth pricing honestly: Glue 6.0 ships Spark 4.1.1 while Apache Spark's current documentation set is 4.2.0. You are migrating to a runtime that is already one minor version behind upstream, and the same is true of Python 3.13 against the current 3.14 line. That is normal for a managed runtime and it is still a fact to put in the migration ticket.
How to decide this week
Pull your Glue spend and split it by meter before you plan anything. If Spark job runs and Interactive Sessions dominate, the version bump is worth scheduling now, because the saving is 30% of the largest line and the work is bounded. If crawlers, Python Shell jobs, Ray jobs or a long-lived development endpoint dominate, the version bump saves nothing and should be scheduled on its technical merits instead.
Then split your tables. Jobs that read and write Iceberg v2 tables can move to Glue 6.0 for the price alone and never touch format-version. Only the tables that need VARIANT, geospatial types or nanosecond timestamps should go to v3, and only if nothing downstream reads them through Athena SQL. Those two decisions are independent, and treating them as one upgrade is how a price cut turns into an outage. Teams running zero-ETL pipelines into a lakehouse or holding long-retention system data in S3 Tables alongside Redshift should map every reader of an affected table first.
India-specific considerations
Glue 6.0 is available in all AWS Commercial regions, which includes Asia Pacific (Mumbai) and Asia Pacific (Hyderabad), as well as AWS GovCloud (US) and the AWS China regions. Indian teams reading the $0.308 rate should re-read it against the Mumbai and Hyderabad price for their own meters rather than converting the US East figure, because Glue DPU rates differ by region. At roughly ₹88 to the dollar in August 2026, a single 10-DPU Spark job run hourly for a month moves from about ₹2.8 lakh to about ₹1.9 lakh of DPU charge at US East rates, which is the order of magnitude worth taking to a finance review.
Data residency is the other item. Moving a table to Iceberg v3 changes which engines can read it, and if a DPDP-driven design routes personal data through a specific region and a specific query engine, the Athena constraint is a compliance question and not only an engineering one.
What is still unknown
The pricing page publishes no 6.0 tier for Ray jobs, Python Shell jobs, development endpoints or crawlers, which reads as "not reduced" rather than "not yet published," but AWS has not said which. There is no published deprecation date for Glue 5.1, so there is no forcing function beyond cost. And AWS has not explained why the launch post credits deletion vectors to 6.0 when its own migration guide dates them to 5.1.
FAQ
What is the AWS Glue 6.0 price per DPU-hour?
An Apache Spark or Spark Streaming job on Glue 6.0 bills at $0.308 per DPU-hour in US East (N. Virginia), against $0.44 on Glue versions 2.0 through 5.1. Billing is per second with a one-minute minimum. Memory-optimized R workers bill at $0.364 and flexible execution at $0.203 on 6.0.
Does the Glue 6.0 price cut apply automatically to my existing jobs?
No. The reduced rates apply only to jobs whose Glue version is set to 6.0 or above. Glue 5.1 remains the default for jobs created without an explicit version, so both existing jobs and newly created jobs continue to bill at $0.44 per DPU-hour until you change the version.
Which Glue meters did not get the 30% reduction?
Python Shell jobs, Ray jobs, provisioned development endpoints and Data Catalog crawler runs all remain at $0.44 per DPU-hour with no separate 6.0 rate on the pricing page. Crawler runs and development endpoints also carry a 10-minute minimum billing duration, unlike the one-minute minimum on Spark jobs.
Can Amazon Athena read Apache Iceberg v3 tables written by Glue 6.0?
No. The AWS Glue known limitations state that Iceberg tables created with format-version 3 cannot be read by Athena SQL, returning the error Cannot read unsupported version 3. AWS recommends staying on Iceberg v2 for cross-engine compatibility with Athena. This is a table-format decision, not a Glue job setting.
Did Glue 6.0 introduce Iceberg deletion vectors?
The launch announcement credits deletion vectors to Glue 6.0, but the AWS Glue migration guide states that deletion vectors using Roaring Bitmaps in Puffin files, and row lineage tracking, have been supported since Glue 5.1. The Glue versions table also records Iceberg format version 3.0 against the 5.1 release.
What breaks when moving a job from Glue 5.1 to Glue 6.0?
Scala moves from 2.12.18 to 2.13.17, so custom JARs need recompiling. Spark SQL ANSI mode is on by default, turning silent NULLs into exceptions. EMRFS is removed and S3A is the only S3 connector. AWS SDK for Java v1 is removed, and Python moves from 3.11 to 3.13.
Do the new Iceberg v3 data types work with Glue DynamicFrames?
No. AWS documents that the new Iceberg v3 data types are supported only with Spark DataFrames and will not work with DynamicFrames. Visual ETL in Glue Studio does not support them either, and AWS recommends migrating those jobs to Amazon SageMaker Unified Studio to use the new types.
How eCorpIT can help
Our data engineering services team runs Glue version migrations as a costed piece of work rather than a version dropdown change: meter-level spend analysis first, then a dependency audit of custom JARs, ANSI-mode SQL review and a table-by-table reader map before any format-version moves to 3. eCorpIT is CMMI Level 5 and ISO 27001:2022 certified, and works as an AWS partner across Indian and global deployments. Tell us your Glue meter split at contact-us and we will tell you whether the 30% is real money for you.
References
- AWS Glue 6.0 delivers 30% price reduction and Iceberg v3 support — AWS What's New, 21 August 2026.
- AWS Glue pricing — per-meter rates, minimum billing durations and DPU allocation defaults.
- AWS Glue metered unit price feed — live regional rates behind the pricing page, read 21 August 2026.
- AWS Glue versions — runtime versions and changes in functionality per Glue release.
- Migrating AWS Glue for Spark jobs to AWS Glue version 6.0 — migration checklist, connector changes and known limitations.
- Apache Iceberg table specification — the v3 change set, row lineage and deletion vector definitions.
- Apache Iceberg releases — current release line, 1.11.0.
- Query Apache Iceberg tables in Amazon Athena — Athena engine version 3 Iceberg support and limitations.
- Migration guide: SQL, Datasets and DataFrame — Apache Spark behaviour changes across versions.
- Apache Spark documentation overview — current Spark documentation version.
- What's new in Python 3.13 — language and standard library changes in the Glue 6.0 Python runtime.
- Migrating a project to Scala 2.13's collections — CollectionConverters and the 2.12 to 2.13 collections change.
- Delta Lake releases — Delta Lake release line shipped in Glue 6.0.
Last updated: 22 August 2026.
Top comments (0)