Thanks for posting and sorry for the trouble! Goodbudget should be able to check the transactions you’re importing against your existing transactions, so you don’t accidentally create duplicates.
If that’s not happening, it might be because the Name, Date, or Amount of the transactions in your files are changing from file to file. To clarify, when you use a CSV file to import with, Goodbudget creates a special identifier for each transaction based on their Name, Date and Amount. If any of those pieces of information change, Goodbudget will think it’s an entirely new transaction and therefore allow you to import again. I’ve seen this kind of thing happen specifically with CSV files that had transactions that had not cleared in the Goodbudgeter’s bank yet. When the transaction finally cleared, the Name, Date, or Amount changed and resulted in them importing the transaction again. Hope that made sense!
Tiffany’s suggestion of using a QFX might work. If your bank offers them, feel free to give it a try. But, you might be better off filtering your CSV file for a date range that doesn’t overlap with transactions you’ve already imported. You could even edit your CSV file directly to remove transactions that are still pending, in case that was the issue.
Hope that helps!