Bannerkiln
HTML5 banner ads from Figma
Design one frame per keyframe, select every size of the campaign, and Bannerkiln writes one ZIP per size: an animated HTML5 ad built from the changes between your frames, with the click code your ad network wants, a backup image, a weight that fits the network's budget, and a report that checks it against the network's own rules. Everything happens on your computer.
Email us to get BannerkilnBuy a license
What you get
- One ad per size from one selection: frames of the same size are that ad's keyframes, played left to right. Sections and component sets work too, and one frame makes a static HTML5 ad
- CSS animation from your keyframes: layers with the same name move, turn, resize and fade, with Figma's easing curves; springs are sampled into keyframes
- Anything CSS can't tween (a colour, the words, a shape) cross-fades, and the panel names each layer it did that for
- Timing from your prototype's After delay and Smart animate, or set per keyframe in the panel and saved on the frame
- Plays written out one after another, so the ad provably stops within the network's limit and comes to rest on the frame you choose
- The click code per network: none for Google Ads, clickTag for Google Ad Manager, Campaign Manager 360, Display & Video 360 and Amazon Ads, Adform's DHTML library and manifest.json, Flashtalking's API and manifest.js, and an IAB clickTAG read from the ad's URL for any other ad server
- The ad.size meta tag, polite load (the first look shows straight away, the rest loads after the page), and an optional 1px border
- A weight budget per network with a meter, and Compress to fit: picture quality first, then resolution, until the ZIP fits
- A static backup image per size, JPG or GIF, within the network's backup limit
- A report per size modelled on the networks' upload checks: weight, file count, types and names, one HTML file, ad.size, external requests, HTTPS, click code, manifest files, animation length and plays, storage APIs, backup size and dimensions
- A live preview of every size in the panel, and one download with each size's ZIP and backup
- Works in Figma Design and Figma Buzz
What Figma does on its own, and what it doesn't
Figma exports pictures and PDFs, Figma Motion exports its own timelines as video, GIF or Lottie, and Buzz resizes and fills ad templates and exports them as images. None of them writes an HTML5 ad: a ZIP with an ad.size tag, a clickTag or an ad network's manifest, a weight under the network's limit and a backup image. That's the gap Bannerkiln fills.
What Bannerkiln doesn't do
Layers become pictures, so the ad's text isn't live text and colours don't tween; they cross-fade. Layers move as whole top-level layers: to animate something inside a group, make it its own layer. It doesn't read Figma Motion timelines, host your ads or upload them to a network. Google Ads only accepts HTML5 ads from accounts it has approved for them; without that, upload the backup image as an image ad. Sizmek (Amazon Ad Server) isn't offered: Amazon shut it down in 2024.
Pricing
Buying here gets you a license key by email. Buying inside the app links the plan to your account. Change or cancel any time in Manage billing.
7-day free trial with 10 exports of up to 5 sizes each, full quality and no watermark, starting with your first export. Building, the preview and the checks are always free. Then $49 a month or $499 a year per seat, billed by Great Work LLC through Stripe. Buying for a team? Choose the number of seats at checkout; one license key covers them all. Subscriptions renew automatically until you cancel in Manage billing. Refunds and switching between monthly and annual: email us and a person handles it.
Privacy
Bannerkiln builds, compresses, zips and checks your ads inside Figma, on your computer. Nothing about your file is uploaded. The plugin only contacts addons.greatwork.company to check your license key. Privacy policy and terms.