These instructions will show you how to add a filter to Segments that will prevent a visitor from seeing the same campaign twice. When done this way, each visitor will only see the associated Campaign once and won't see it again.
1. Locate and select the User Context API filter (in the API category).
2. Select "Campaigns - Viewed" from the "Select field to add" drop down.
3. Select "is not" and insert the Campaign ID.
4. Click the plus sign to add a second field to the filter. Choose "Campaigns - Viewed" as the second field, same as the first.
5. Select OR from the AND/OR field.
6. Select "is empty" for the second Campaigns Viewed filter option.
Finally please make sure that the campaign is not marked as "Sticky", as this will make it appear every time.
You're all set! This segment will now only match visitors who have not seen the campaign yet.