François Castets

Journal

19 October 202619 October 2026 3 min de lecturemin read Réseaux de médiasMedia networks

Servir ses propres emplacements publicitaires sans ad serverServing your own ad slots without an ad server

Une régie maison pour neuf médias : rotation, plafonnement, comptage des impressions, et pourquoi tout cela tient sans plateforme externe.An in-house ad platform for nine media sites: rotation, frequency capping, impression counting, and why none of it needs an external platform.

Vendre soi-même ses emplacements publicitaires change l’économie d’un réseau de médias : pas de commission, pas d’intermédiaire, et des annonceurs locaux qu’aucune plateforme ne démarcherait. Encore faut-il pouvoir servir les campagnes.Selling your own ad slots changes the economics of a media network: no commission, no intermediary, and local advertisers no platform would ever approach. You still need to be able to serve the campaigns.

Ce qu'une régie doit vraiment savoir faireWhat an ad platform actually needs to do

Les plateformes publicitaires font mille choses. Une régie de réseau local en a besoin de cinq.Ad platforms do a thousand things. A local network needs five of them.

  • Afficher la bonne campagne au bon emplacement, selon le site et la rubrique.Show the right campaign in the right slot, by site and by section.
  • Faire tourner plusieurs campagnes sur un même emplacement, selon un poids.Rotate several campaigns through one slot, by weight.
  • Arrêter une campagne à sa date de fin ou à son quota d’impressions.Stop a campaign at its end date or its impression quota.
  • Ne pas montrer dix fois la même bannière au même visiteur dans la même session.Not show the same banner ten times to the same visitor in one session.
  • Compter les impressions et les clics, de façon qu’on puisse facturer sans discussion.Count impressions and clicks so you can invoice without argument.

Le comptage, le seul point délicatCounting, the only tricky part

Compter une impression à chaque affichage de page semble évident, et c’est faux : une bannière en bas de page n’est jamais vue par la moitié des visiteurs. Le comptage se déclenche donc quand l’emplacement entre réellement dans l’écran, et seulement après une seconde de présence. C’est la définition retenue par le marché, et elle est défendable face à un annonceur.Counting an impression on every page view seems obvious, and it is wrong: a banner at the foot of the page is never seen by half the visitors. Counting therefore fires when the slot actually enters the viewport, and only after one second of presence. That is the industry definition, and it is defensible in front of an advertiser.

L’écriture en base ne se fait pas à chaque impression — ce serait des milliers d’écritures par heure. Les compteurs sont agrégés côté navigateur et envoyés par paquets, puis consolidés par un traitement périodique. La facturation travaille sur des totaux horaires, pas sur des événements unitaires.Writes to the database do not happen per impression — that would be thousands of writes an hour. Counters are aggregated in the browser and sent in batches, then consolidated by a periodic job. Invoicing works on hourly totals, not on individual events.

Le poids, qui doit rester nulWeight, which must stay at zero

Une régie qui ralentit les sites qu’elle monétise se sabote elle-même. L’ensemble du code client tient en quelques kilo-octets, sans dépendance externe, et les emplacements réservent leur hauteur avant que la bannière arrive — sans quoi le contenu saute, et le score de stabilité visuelle s’effondre.An ad platform that slows down the sites it monetises sabotages itself. The entire client-side code fits in a few kilobytes, with no external dependency, and slots reserve their height before the banner lands — otherwise the content jumps and the layout stability score collapses.

Une publicité qui décale le texte pendant la lecture coûte plus cher en lecteurs perdus qu’elle ne rapporte. Réserver la hauteur de l’emplacement n’est pas une option.An ad that shifts the text while someone is reading costs more in lost readers than it earns. Reserving the slot height is not optional.

La limite assuméeThe limit, owned

Cette régie ne fait pas d’enchères en temps réel, pas de ciblage comportemental, pas de reciblage. C’est volontaire : ces mécanismes imposent des traceurs tiers, un bandeau de consentement lourd, et un partage de données que des médias locaux n’ont aucun intérêt à accepter. La contrepartie est une régie plus simple, plus rapide, et beaucoup plus facile à expliquer à un annonceur.This platform does no real-time bidding, no behavioural targeting, no retargeting. That is deliberate: those mechanisms require third-party trackers, a heavy consent banner, and data sharing that local media have no interest in accepting. The trade is a simpler, faster platform that is far easier to explain to an advertiser.

Le projet derrière cette noteThe project behind this note

Tout est parti de get-regie, la régie publicitaire. La fiche détaille le contexte, ce qui a été construit et ce que le client en a tiré.It all started with get-regie, la régie publicitaire. The project page covers the context, what was built and what the client got out of it.

À lire ensuiteRead next