diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index db88b859782dade618b3e76043475af450eee4b0..e6111df27565f6e047b089c7a9cff51254425936 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -122,7 +122,12 @@ jobs:
                 # downstream projects might not be using PytatoArrayContext, force
                 # pytato as a requirement so that using PytatoArrayContext in the
                 # downstream package's tests doesn't result in a failure.
-                echo "git+https://github.com/inducer/pytato.git#egg=pytato" >> requirements.txt
+                if grep -q "pytato"  requirements.txt
+                then
+                    echo "$DOWNSTREAM_PROJECT already has pytato as a requiement";
+                else
+                    echo "git+https://github.com/inducer/pytato.git#egg=pytato" >> requirements.txt
+                fi
 
                 # Avoid slow or complicated tests in downstream projects
                 export PYTEST_ADDOPTS="-k 'not (slowtest or octave or mpi)'"