Background: I have a daily batch process that creates a sendable Data Extension from a query on a Synchronized Data Extension. The automation runs a query that overwrites the sendable Data Extension each day that it runs, sends to that DE, and then another query appends that day's information to a historical Data Extension.

Problem: We have received some complaints that the View As Web Page link is broken on this email. We figured out that this is because the sendable DE overwrites each day, so when the overwrite occurs the VAWP link is unable to lookup to the sendable DE to recreate the email.

Solution: Create a historical DE with the first query by querying for that days information and appending it. Create a filtered data extension that includes everything prior to today. Send to the historical DE and suppress the filtered DE, which in effect would send only to today's data.

Question: Will using a Suppression list increase send time? If the Historical DE is 400k records and the filtered DE is 390K records, will sending to 10K records in that manner taking longer than just sending to 10K records without the suppression?

  • I may have a stupid solution: Just use Journey Builder for every send process. it keeps a snapshot of the data from the dataextension when the journey starts. Or a snapshot of the new records when it starts multiple times. Therefore the view as web page link will always present the data like it was when the journey started (can be a problem when you have changing attributes and the journey has a long duration, then it still takes the values from the start when you do not have written ampscript to retrieve the new values). Mar 29, 2019 at 6:42

1 Answer 1


Yes, the larger the sendable DE and corresponding suppression/exclusion DEs, the longer it will take to process. With only 400k records the time will be minimal, but as it grows in size the send time will become longer. This could potentially be handled or at least managed via a data retention period, but that would depend on your volume and required time period for VAWP to be available.

I believe if you use a filtered DE as the sendable, as long as they still exist on the source DE - the VAWP will work. So you could try out creating a filter and send to only today's records in it. I honestly am not 100% on this, but I am fairly confident - I would test this solution prior to sending anything live to verify.

Otherwise, the other, non-Journey, solution would be to have 2 DEs. One sendable and one 'archive'. Then inside the email you would place a conditional based on _MessageContext that when it is equal to VAWP to pull all attributes, etc. from the archive DE via lookups, instead of the sendable attributes. This would mean that you would need to have all your personalization as AMPscript variables, but that shouldn't be much effort to accomplish using AttributeValue() function (which I HIGHLY recommend anyway).

Journey Builder can be an option as well, but that is not designed for bulk sends and can cause its own issues if sending significant amounts of emails at the same time. This is including a slow down in send time as, similar to a Triggered Sends (which is what email activities in JB are), it fully processes (from receipt to send) each email individually and puts the rest in a queue - which means that there can potentially be many minutes between first one sent and last one sent.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .