OpenAdLibraryOpenAdLibrary
Δίκτυα Native Διαφημίσεων

Επιβραδύνουν τα Native Widgets τον Ιστότοπο σας; Μετρήθηκε η Επίδραση στην Απόδοση

Τα widgets προτάσεων περιεχομένου πράγματι προσθέτουν χρόνο φόρτωσης, αλλά η ζημιά αφορά κυρίως την υλοποίηση, όχι τη μορφή της διαφήμισης. Εδώ είναι πού κρύβεται το κόστος και πώς να το διορθώσετε.

Εικονογραφική απεικόνιση: Επιβραδύνουν τα Native Widgets τον Ιστότοπο σας; Μετρήθηκε η Επίδραση στην Απόδοση

Τα native widgets από τις Taboola, Outbrain, MGID και Revcontent προσθέτουν μετρήσιμο χρόνο φόρτωσης, κυρίως μέσω τρίτων JavaScript, πρόσθετων γύρων στον διακομιστή διαφημίσεων και φόρτωσης εικόνων κάτω από το fold. Το πόσο επιβαρύνει εξαρτάται σε μεγάλο βαθμό από την υλοποίηση: ένα ασύγχρονα φορτωμένο, lazy-rendered widget τοποθετημένο κάτω από το fold κοστίζει πολύ λιγότερο από ένα συγχρονισμένο script που μπλοκάρει το main thread κοντά στην κορυφή της σελίδας.

Από πού προέρχεται πραγματικά το κόστος απόδοσης#

Ένα widget προτάσεων περιεχομένου δεν είναι ένα μόνο αίτημα. Η εγκατάσταση ενός ενεργοποιεί συνήθως:

  • Το δικό σας script tag του εκδότη, το οποίο φορτώνεται ασυγχρόνως στις περισσότερες σύγχρονες υλοποιήσεις, αν και παλιές εγκαταστάσεις μερικές φορές εξακολουθούν να φορτώνονται συγχρόνως και να μπλοκάρουν την απόδοση
  • Μια κλήση στον διακομιστή διαφημίσεων του δικτύου για να ανακτήσει το σύνολο προτάσεων για τη συγκεκριμένη σελίδα και χρήστη
  • Πρόσθετες γύρες από την πλευρά της ζήτησης και του header bidding εάν το δίκτυο εκτελεί προγραμματισμένες δημοπρασίες αντί για άμεσα πωλούμενο απόθεμα, κάτι που μπορεί να περάσει από πολλούς header bidding συνεργάτες
  • Εικόνες ή μικρογραφίες για κάθε προτεινόμενο στοιχείο, συνήθως 6 έως 12 ανά παρουσία widget
  • Tracking pixels που ενεργοποιούνται κατά την απόδοση και το κλικ, τόσο για το δίκτυο όσο και για οποιαδήποτε παρακολούθηση διαφημιστή προς τα κάτω

Κάθε ένα από αυτά προσθέτει καθυστέρηση και συσσωρεύονται. Ένα widget που μοιάζει με "ένα script tag" στο CMS σας μπορεί να ενεργοποιήσει μια ντουζίνα ή περισσότερα αιτήματα δικτύου μόλις αποδοθεί.

Τι κάνει αυτό συγκεκριμένα στα Core Web Vitals#

Τα μετρικά που είναι πιο πιθανό να μετακινηθούν:

Μετρικό Τυπική Επίδραση Γιατί
LCP (Largest Contentful Paint) Συνήθως χαμηλή, εκτός αν το ίδιο το widget είναι το μεγαλύτερο στοιχείο Πρόβλημα μόνο αν το widget αποδίδεται πάνω από το fold και οι εικόνες του είναι μεγάλες
CLS (Cumulative Layout Shift) Συχνά ο μεγαλύτερος κίνδυνος Αν ο χώρος του widget δεν έχει καθοριστεί πριν φορτωθεί το περιεχόμενο, η σελίδα πηδάει όταν αποδίδεται
INP (Interaction to Next Paint) Μέτρια Επιπλέον JavaScript που εκτελείται στο main thread μπορεί να καθυστερήσει την ανταπόκριση σε κλικ και κύλιση
TTFB / βάρος σελίδας Μικρή έως μέτρια Τα πρόσθετα αιτήματα αυξάνουν το συνολικό βάρος της σελίδας, αν και συνήθως μετά την αρχική απόδοση αν υλοποιηθεί σωστά

Το CLS είναι αυτό που προκαλεί προβλήματα στους περισσότερους εκδότες, γιατί είναι επίσης αυτό που τα σήματα εμπειρίας χρήστη της Google ζυγίζουν πιο ορατά. Αν το widget σας φορτώνεται χωρίς δεσμευμένο χώρο, η σελίδα πηδάει ορατά μόλις συμπληρωθεί, κάτι που ακριβώς τιμωρεί το CLS.

Γιατί το ίδιο widget έχει διαφορετική απόδοση σε διαφορετικούς ιστότοπους#

Δύο εκδότες που τρέχουν τεχνικά την ίδια εγκατάσταση Taboola ή Outbrain μπορούν να δουν σημαντικά διαφορετικά αποτελέσματα στα Core Web Vitals, και η διαφορά σχεδόν πάντα οφείλεται στην περιβάλλουσα σελίδα, όχι στον ίδιο τον κώδικα του widget. Μια σελίδα που είναι ήδη ελαφριά, με ελάχιστα scripts τρίτων, βελτιστοποιημένες εικόνες και γρήγορο hosting stack, απορροφά ένα επιπλέον ασύγχρονο widget με πολύ μικρή ορατή επίπτωση, γιατί υπάρχει ελεύθερο περιθώριο στον προϋπολογισμό φόρτωσης της σελίδας. Μια σελίδα που ήδη μεταφέρει πολλά άλλα scripts τρίτων (analytics, widgets chat, δεύτερο δίκτυο διαφημίσεων, ενσωματώσεις κοινωνικών δικτύων) ξεπερνά ένα όριο όπου τα αιτήματα του native widget γίνονται αυτά που οι χρήστες πραγματικά παρατηρούν, ακόμα κι αν μπορεί να αντιπροσωπεύει μικρό ποσοστό του συνολικού βάρους της σελίδας. Αν επιλύετε ένα πρόβλημα απόδοσης μετά την προσθήκη ενός widget, ελέγξτε πρώτα όλα τα άλλα που τρέχουν στη σελίδα. Το widget είναι συχνά ο πιο πρόσφατα προστεθείς, πιο ορατός ύποπτος, αλλά όχι απαραίτητα το πραγματικό μποτιλιάρισμα.

Πώς να εγκαταστήσετε ένα χωρίς να καταστρέψετε το σκορ ταχύτητάς σας#

Η διαφορά μεταξύ ενός widget που σας κοστίζει τίποτα μετρήσιμο και ενός που ορατά επιβραδύνει τον ιστότοπο σας συνήθως οφείλεται σε επιλογές υλοποίησης, όχι στο ίδιο το δίκτυο:

  1. Φορτώστε το script ασυγχρόνως, ποτέ με ένα μπλοκάρισμα συγχρονισμένου tag κοντά στην κορυφή της σελίδας
  2. Δεσμεύστε χώρο με σταθερό ύψος ή CSS aspect-ratio πριν συμπληρωθεί το widget, για να αποφύγετε layout shift
  3. Κάντε lazy-load κάτω από το fold, ώστε τα αιτήματα του widget να μην ανταγωνίζονται το πρωτεύον περιεχόμενό σας για εύρος ζώνης κατά την αρχική φόρτωση της σελίδας
  4. Τοποθετήστε το μετά το κύριο περιεχόμενό σας, όχι μόνο για την εμπειρία του αναγνώστη αλλά γιατί φυσικά αναβάλλει τη φόρτωση μέχρι να αποδοθεί το περιεχόμενο που πραγματικά καθορίζει το LCP σας
  5. Περιορίστε τον εαυτό σας σε μία παρουσία widget ανά σελίδα όπου είναι δυνατόν. Η στοίβαξη πολλαπλών widgets προτάσεων πολλαπλασιάζει τον αριθμό αιτημάτων για μειούμενη απόδοση εσόδων
  6. Δοκιμάστε με πραγματική επιβράδυνση συσκευής, όχι μόνο desktop με ευρυζωνικότητα. Η απόδοση σε κινητό 4G είναι εκεί που το βάρος του widget εμφανίζεται πιο οδυνηρά

Αξίζουν τα έσοδα την ανταλλαγή ταχύτητας;#

Αυτή είναι η πραγματική απόφαση, και εξαρτάται από το τι αξίζει η ταχύτητα της σελίδας για τον συγκεκριμένο ιστότοπο σας. Αν βασίζεστε σε μεγάλο βαθμό σε οργανική αναζήτηση και η εμπειρία χρήστη στη σελίδα επηρεάζει σημαντικά τις κατατάξεις σας, ένα κακώς υλοποιημένο widget που τραβάει προς τα κάτω τα σκορ σας στα Core Web Vitals μπορεί να σας κοστίσει περισσότερο σε ορατότητα αναζήτησης από όσο αποφέρει σε έσοδα από διαφημίσεις. Αν η επισκεψιμότητά σας προέρχεται κυρίως από άμεσες πηγές, κοινωνικά δίκτυα ή newsletters όπου η κατάταξη αναζήτησης είναι μικρότερος παράγοντας, το κόστος ταχύτητας έχει λιγότερη σημασία σε σχέση με την αύξηση του RPM.

Σε κάθε περίπτωση, η διόρθωση σπάνια είναι "να μην τρέχετε native widgets." Είναι σχεδόν πάντα "διορθώστε την υλοποίηση." Ένα καλά υλοποιημένο ασύγχρονο, lazy-loaded, σωστά διαστασιολογημένο widget από τις Taboola, Outbrain, MGID ή Revcontent κοστίζει ένα κλάσμα από όσο ένα κακώς υλοποιημένο, για τα ίδια έσοδα.

Πώς το OpenAdLibrary σας βοηθά να συγκρίνετε πριν δεσμευτείτε#

Πριν προσθέσετε ένα widget από ένα δίκτυο που δεν έχετε χρησιμοποιήσει, αξίζει να δείτε πώς φαίνεται πραγματικά το απόθεμα και η μορφή του σε άλλους ιστότοπους, όχι μόνο την παρουσίαση πωλήσεων. Το OpenAdLibrary σας επιτρέπει να περιηγηθείτε σε ζωντανές δημιουργίες από τις Taboola, Outbrain, MGID, Revcontent και άλλα δίκτυα για να δείτε τη μορφή, την πυκνότητα εικόνων και τους μηχανισμούς click-through που πραγματικά θα ενσωματώνατε, κάτι που αποτελεί πιο συγκεκριμένη βάση για απόφαση υλοποίησης από ένα demo λογαριασμό μόνο.

Πώς να μετρήσετε πραγματικά την επίπτωση στον δικό σας ιστότοπο#

Μην βασίζεστε σε γενικές εκτιμήσεις επιπτώσεων, συμπεριλαμβανομένων των εύρους σε αυτό το άρθρο. Μετρήστε άμεσα τον δικό σας ιστότοπο:

  1. Βασική γραμμή πρώτα. Εκτελέστε τις βασικές σας σελίδες μέσω εργαλείου όπως το PageSpeed Insights ή το WebPageTest πριν εγκαταστήσετε οτιδήποτε, και καταγράψτε τα LCP, CLS και INP μαζί με το συνολικό βάρος και αριθμό αιτημάτων της σελίδας σας.
  2. Εγκαταστήστε το widget και μετά επαναλάβετε τη δοκιμή στις ίδιες σελίδες υπό τις ίδιες συνθήκες. Χρησιμοποιήστε προφίλ επιβραδυνόμενης κινητής σύνδεσης, όχι μόνο απεριόριστο desktop, αφού εκεί τείνει να εμφανίζεται περισσότερο η επίπτωση.
  3. Απομονώστε τη συμβολή του widget συγκεκριμένα. Τα περισσότερα εργαλεία δοκιμών επιτρέπουν να φιλτράρετε το waterfall κατά προέλευση αιτήματος, ώστε να δείτε ακριβώς πόσο από τον συνολικό χρόνο φόρτωσης και αριθμό αιτημάτων είναι υπεύθυνο το ίδιο το widget έναντι της βασικής γραμμής του δικού σας ιστότοπου.
  4. Επαναλάβετε τη δοκιμή μετά τις διορθώσεις υλοποίησης (ασύγχρονη φόρτωση, δεσμευμένο ύψος χώρου, lazy loading) αντί να υποθέσετε ότι μια διόρθωση δούλεψε. Μικρές λεπτομέρειες υλοποίησης, όπως το αν το ύψος του χώρου ορίζεται με σταθερή τιμή pixel έναντι ενός responsive aspect-ratio box, μπορούν να παράγουν σημαντικά διαφορετικά αποτελέσματα CLS ακόμα και με το ίδιο υποκείμενο widget.
  5. Επαναλάβετε περιοδικά, όχι μόνο μία φορά κατά την έναρξη. Τα δίκτυα μερικές φορές αλλάζουν τη δική τους συμπεριφορά script ή την πυκνότητα διαφημίσεων με την πάροδο του χρόνου χωρίς ειδοποίηση προς τους εκδότες, οπότε μια ρύθμιση που ήταν καθαρή πριν έξι μήνες αξίζει να ελεγχθεί ξανά.

Συνηθισμένα λάθη υλοποίησης#

Μια χούφτα επαναλαμβανόμενων ζητημάτων αντιπροσωπεύουν το μεγαλύτερο μέρος του αποφεύξιμου κόστους απόδοσης:

  • Χωρίς δεσμευμένο ύψος χώρου, οπότε η σελίδα πηδάει ορατά μόλις συμπληρωθεί το widget, βλάπτοντας άμεσα το CLS
  • Τοποθέτηση του widget πάνω ή μέσα στο κύριο περιεχόμενο αντί μετά από αυτό, ανταγωνιζόμενο το πραγματικό σας περιεχόμενο για εύρος ζώνης και προτεραιότητα αρχικής φόρτωσης
  • Στοίβαξη πολλαπλών παρουσιών widget σε μία σελίδα, πολλαπλασιάζοντας τον αριθμό αιτημάτων για περιορισμένα πρόσθετα έσοδα
  • Χρήση παλιού συγχρονισμένου τμήματος κώδικα εγκατάστασης που ένας εκδότης αντέγραψε πριν χρόνια και δεν επανεξέτασε ποτέ, ενώ το δίκτυο έχει από τότε κυκλοφορήσει ασύγχρονη έκδοση
  • Μη δοκιμή συγκεκριμένα σε κινητό, όπου ο συνδυασμός πιο αργών συνδέσεων και μικρότερων viewports κάνει τόσο τα ζητήματα χρόνου φόρτωσης όσο και του layout shift πιο ορατά από ό,τι θα φαινόταν σε desktop με ευρυζωνικότητα

Τα περισσότερα από αυτά είναι εφάπαξ διορθώσεις στον κώδικα προτύπου σας, όχι συνεχείς φορτία συντήρησης, κάτι που τα καθιστά αξίας να γίνουν σωστά μία φορά αντί να ζείτε με έναν συνεχή, μετρήσιμο εμπόδιο σε κάθε φόρτωση σελίδας.

Η ουσία#

Τα native widgets πράγματι προσθέτουν μετρήσιμο βάρος, και το CLS είναι συνήθως το μετρικό που πρέπει να παρακολουθείτε πιο στενά. Το κόστος είναι σε μεγάλο βαθμό συνάρτηση της ποιότητας υλοποίησης (ασύγχρονη φόρτωση, δεσμευμένος χώρος, lazy loading κάτω από το fold) παρά μια εγγενής ιδιότητα της μορφής διαφήμισης. Μετρήστε την πραγματική σας κατάσταση πριν και μετά με πραγματική δοκιμή συσκευών αντί να υποθέσετε την επίπτωση βάσει φήμης, και διορθώστε ζητήματα υλοποίησης πριν να καταλήξετε ότι η ίδια η μορφή δεν αξίζει.

Συχνές ερωτήσεις

Ποιο μετρικό των Core Web Vitals επηρεάζουν περισσότερο τα native widgets;
Το Cumulative Layout Shift (CLS) είναι συνήθως ο μεγαλύτερος κίνδυνος, επειδή αν ο χώρος του widget δεν έχει καθοριστεί πριν φορτωθεί, η σελίδα πηδάει ορατά μόλις εμφανιστούν οι προτάσεις. Το LCP και το INP μπορούν επίσης να επηρεαστούν, αλλά συνήθως λιγότερο σοβαρά με μια σωστή υλοποίηση.
Πρέπει να φορτώσω ένα widget προτάσεων περιεχομένου συγχρόνως ή ασυγχρόνως;
Πάντα ασυγχρόνως. Ένα συγχρονισμένο script tag κοντά στην κορυφή της σελίδας μπλοκάρει την απόδοση όσο φορτώνεται, κάτι που επιβαρύνει άμεσα τον χρόνο φόρτωσης. Σχεδόν όλα τα μεγάλα native δίκτυα υποστηρίζουν ασύγχρονη φόρτωση. Παλιές εγκαταστάσεις μερικές φορές εξακολουθούν να χρησιμοποιούν συγχρονισμένη φόρτωση από προεπιλογή, οπότε ελέγξτε τη συγκεκριμένη ρύθμιση σας.
Η εκτέλεση πολλαπλών native widgets σε μια σελίδα επιδεινώνει την απόδοση;
Ναι, ο αριθμός αιτημάτων και η εκτέλεση των scripts πολλαπλασιάζονται περίπου με κάθε επιπλέον παρουσία widget, για μειούμενη απόδοση εσόδων ανά μονάδα. Οι περισσότεροι εκδότες πετυχαίνουν καλύτερα αποτελέσματα τρέχοντας ένα widget ανά σελίδα σωστά, παρά να τοποθετούν πολλά.
Μπορώ να κάνω lazy-load ένα native ad widget;
Ναι, και θα έπρεπε αν το widget βρίσκεται κάτω από το fold. Το lazy-loading αναβάλλει τα αιτήματα δικτύου του widget μέχρι ο αναγνώστης να κάνει κύλιση κοντά του, έτσι δεν ανταγωνίζεται το πρωτεύον περιεχόμενό σας για εύρος ζώνης κατά την αρχική φόρτωση της σελίδας.
Θα βλάψει ένα αργά φορτωμένο widget τις αναζητήσεις μου;
Μπορεί, αν τα σκορ σας στα Core Web Vitals είναι ήδη στο όριο και το widget τα ωθεί σε αποτυχημένο εύρος, καθώς η εμπειρία χρήστη στη σελίδα είναι ένας από τους πολλούς παράγοντες κατάταξης. Η διόρθωση είναι σχεδόν πάντα θέμα υλοποίησης (ασύγχρονη φόρτωση, δεσμευμένος χώρος, lazy loading), όχι η αφαίρεση του widget εντελώς.
Η Ομάδα του OpenAdLibrary
Συντάχθηκε απόΗ Ομάδα του OpenAdLibrary
Έρευνα για διαφημιστική νοημοσύνη και native διαφημίσεις

Δημιουργούμε το OpenAdLibrary, την ανοιχτή πλατφόρμα διαφανειας διαφημίσεων. Κάθε μέρα τα συστήματά μας καταγράφουν ζωντανές native διαφημίσεις σε Taboola, Outbrain, MGID, Revcontent, Teads, Yahoo και MSN, αναγνωρίζουν τον πραγματικό διαφημιστή πίσω από κάθε μία και ακολουθούν το κλικ μέχρι τη σελίδα προορισμού. Αυτοί οι οδηγοι συνοψίζουν ό,τι βλέπουμε σε αυτά τα δεδομένα ώστε να μπορείτε να ερευνήσετε την αγορά πιο γρήγορα.