IMAGE function like Sheets or Microsoft Excel, so logos go in as static pictures. For a single slide, paste a Brandfetch URL directly into the picture dialog. For a whole deck, VBA’s Shapes.AddPicture accepts a Brandfetch URL too, so a short macro can drop dozens of logos in one run instead of pasting each one by hand.
Quick manual insert
1
Build the logo URL
Use a high resolution so the logo stays sharp if it’s resized on the slide:
2
Insert it as a picture
In Microsoft PowerPoint for Windows, go to Insert > Pictures > This Device, then paste the URL into the filename field instead of picking a local file, and click Insert.
The picture dialogs in Microsoft PowerPoint for Mac and Microsoft PowerPoint for web don’t accept URLs. Download the image in your browser first, then insert it from disk.
3
Reuse it across the deck
To keep a logo consistent across every slide in a layout, add it to the Slide Master (View > Slide Master) once instead of pasting it slide by slide.
Macros: insert logos in bulk
Shapes.AddPicture is documented as taking a local file path, but current Microsoft 365 desktop builds also accept an http/https URL directly in that argument and fetch it on the spot, no download-then-insert step needed. That makes it a drop-in replacement for the CDN URL used above, looped over as many logos as you need. Both macros below request the icon.png variant rather than Brandfetch’s WebP default, since AddPicture inserts PNG reliably across Office versions.
Macros need Microsoft PowerPoint desktop; they don’t run in Microsoft PowerPoint for web. Save the file as a macro-enabled presentation (
.pptm) and allow macros when you reopen it. If AddPicture raises error 1004 (“The specified file was not found”), your build doesn’t fetch URLs, download the logo files first and pass local paths instead.Build a logo wall
Drops a grid of logos onto the current slide from a list of domains, useful for a “trusted by” or portfolio slide. Each inserted picture is tagged with the domain in its Alt Text, so the refresh macro below can find it again later.Insert Logo Wall
Refresh every logo in a deck
Rerun this any time to swap in fresh logos across every slide at once, for example after a client rebrand, or to bump resolution before a deck goes to print. It finds every picture tagged by the macro above, re-fetches it at the shape’s current size and position, and replaces it in place.Refresh All Logos
Running a macro
1
Open the VBA editor
Press Alt+F11 (Windows) or Fn+Option+F11 (Mac), then Insert > Module and paste one of the macros above.
2
Run it
With a slide open in Normal view, press F5 or Run > Run Sub/UserForm.
3
Save as macro-enabled
Save the deck as PowerPoint Macro-Enabled Presentation (.pptm) so the macros are kept for next time.
Access all brand data (logos, colors, company data…)
Logos are only half of an on-brand deck, the other half is the brand’s colors. Those come from the Brand API, which returns each brand’s color palette, fonts, and company info as JSON. You’ll need a Brand API key from the API keys page, this is a secret key, separate from the client ID used above. This macro fetches a brand’s accent color and draws a color bar across the bottom of every slide:Apply Brand Accent
colors), the brand’s fonts, and company data, so the pattern extends to title colors, themed shapes, or a closing slide with company facts. Each run counts against your Brand API plan’s quota.
MSXML2.XMLHTTP (the HTTP client used here) is Windows-only, so this macro doesn’t run on Microsoft PowerPoint for Mac. On a Mac, fetch the JSON once with curl in Terminal and hardcode the hex value instead.