diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
index a3c3287a254ce895d52df1035d1a142142a1ad1b..332a9e0b16c029983df2da6cf4406a1e20304951 100644
--- a/.github/workflows/lint.yml
+++ b/.github/workflows/lint.yml
@@ -60,9 +60,11 @@ jobs:
         if: steps.env_cache.outputs.cache-hit != 'true'
 
       - name: run womtool validate
+        # Only check files that have changed from the base reference.
+        # Womtool validate checks very slowly, so this saves a lot of time.
         run: |
           bash -c '
-            for WDL_FILE in $(git ls-files *.wdl); do
+            for WDL_FILE in $(git diff --name-only ${{github.base_ref}} | grep -E '*.wdl$'); do
               womtool validate $WDL_FILE
             done
           '