Hi @SatyaVani
Prior to DOM Ready the data layer is referenced as "utag_data".
After DOM Ready, the data layer is referenced as "utag.data"
The b object is available during the scope of a tag. For more info see the image at the bottom of this article: https://community.tealiumiq.com/t5/iQ-Tag-Management/Order-of-Operations/ta-p/326
I suggest referencing data using "utag.data" instead of "b" as the "b" object is not available at that time.
If I was implementing this, I would split this logic up into 2 parts:
1. Javascript Code extension (scoped as Preloader) – Calculate the timing, and adds this to the data layer (eg utag_data.timing_page_load = XXX).
2. Adobe tag – Add mapping for "timing_page_load" to event120
... View more