diff --git a/gso/migrations/versions/2025-05-28_90547df711c3_backfill_iptrunk_config_version.py b/gso/migrations/versions/2025-05-28_90547df711c3_backfill_iptrunk_config_version.py
new file mode 100644
index 0000000000000000000000000000000000000000..4915aadf90b847b0479f80afdc47a62f548fa81b
--- /dev/null
+++ b/gso/migrations/versions/2025-05-28_90547df711c3_backfill_iptrunk_config_version.py
@@ -0,0 +1,48 @@
+"""empty message.
+
+Revision ID: 90547df711c3
+Revises: 54477431c9ef
+Create Date: 2025-05-28 10:15:07.579188
+
+"""
+import sqlalchemy as sa
+from alembic import op
+
+# revision identifiers, used by Alembic.
+revision = '90547df711c3'
+down_revision = '54477431c9ef'
+branch_labels = None
+depends_on = None
+
+
+def upgrade() -> None:
+    conn = op.get_bind()
+    conn.execute(sa.text("""
+WITH rt_id AS (
+    SELECT resource_type_id FROM resource_types WHERE resource_type = 'iptrunk_config_version'
+)
+INSERT INTO subscription_instance_values (subscription_instance_id, resource_type_id, value)
+SELECT si.subscription_instance_id, rt_id.resource_type_id, '1.0'
+FROM rt_id, subscription_instances si
+WHERE si.product_block_id = (
+    SELECT product_block_id FROM product_blocks WHERE name = 'IptrunkBlock'
+);
+    """))
+
+
+def downgrade() -> None:
+    conn = op.get_bind()
+    conn.execute(sa.text("""
+WITH rt_id AS (
+    SELECT resource_type_id FROM resource_types WHERE resource_type = 'iptrunk_config_version'
+)
+DELETE FROM subscription_instance_values
+WHERE resource_type_id = (SELECT resource_type_id FROM rt_id)
+  AND value = '1.0'
+  AND subscription_instance_id IN (
+      SELECT subscription_instance_id FROM subscription_instances
+      WHERE product_block_id = (
+          SELECT product_block_id FROM product_blocks WHERE name = 'IptrunkBlock'
+      )
+  );
+    """))