Teams custom background: JPG, PNG or BMP, and what Sume outputs
Microsoft Teams accepts a custom meeting background as .JPG, .PNG or .BMP. Sume image models output png, jpeg or webp, so pick png or jpeg.

Microsoft Teams asks for a custom meeting background as a .JPG, .PNG or .BMP file. Sume's image API outputs png, jpeg or webp, so set output_format to png or jpeg and the file is one Teams lists. Leave webp out: it is not in Microsoft's list.
Microsoft's article does not state a file size limit or recommended dimensions for custom backgrounds, and this post does not invent any.
What does the Teams article actually say?
The support article tells you to make sure the image is a .JPG, .PNG or .BMP file. You can upload it before joining, from the pre-join screen, or during a meeting from the video effects menu. The article also describes an AI Decorate feature that generates background effects, which is separate from uploading your own picture.
It describes static image uploads only. It says nothing about animated or video backgrounds, so check Teams itself before building a loop for it.
| Question | What the article says |
|---|---|
| Accepted formats | .JPG, .PNG or .BMP |
| File size limit | Not stated |
| Recommended dimensions | Not stated |
| Where to upload | Pre-join screen or video effects menu in a meeting |
| Video backgrounds | Not mentioned |
Which Sume output format matches?
The Sume image API lists output_format as png, jpeg or webp in its parameter docs. Two of those match Teams. Use png for flat graphics and logos, and jpeg for photographic scenes where file weight matters.
| Sume output_format | Teams accepts it? |
|---|---|
| png | Yes, as .PNG |
| jpeg | Yes, as .JPG |
| webp | No, not in the list |
How do you request a 16:9 background?
Post to /v1/images with a model, a prompt, a 16:9 aspect_ratio and your output_format. The aspect_ratio field takes each model's native catalog, so confirm 16:9 for your model in GET /v1/images/models first. The request below uses the model from the Sume docs example.
import requests, os
resp = requests.post(
"https://api.sume.com/v1/images",
headers={"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"},
json={
"model": "bytedance-seed/seedream-4.5",
"prompt": "Calm home office wall, soft daylight, shelves, no people",
"aspect_ratio": "16:9",
"output_format": "jpeg",
},
timeout=120,
)
resp.raise_for_status()
for image in resp.json()["data"]:
print(image["url"], image["media_type"])What should you check before uploading?
Open the returned URL and confirm media_type reads image/png or image/jpeg, not image/webp. Keep the middle of the frame calm, because the speaker sits in front of it. Because Microsoft publishes no dimension guidance, test the picture in a private meeting before a customer call.
Sources
Related posts
More in Use cases
- UK Self Assessment deadline Jan 31, 2027: a reminder clip from photos
GOV.UK sets 11:59pm on 31 January 2027 for online returns and payment. Build a 20-second accountant reminder from five photos, a bed and cues for $0.425.
- US federal holidays Nov 2026 to Jan 2027: one closed-notice clip each
OPM lists five federal holidays from Nov 2026 to Jan 2027. Build one closed-notice clip per date with Sume caption cues, with the payloads generated in Python.
- Winter closure notice video: a reusable caption-cue template
A snow-day or closure notice for a gym, studio or school: keep one background clip, change only the caption cues, and re-burn in minutes.
- World Kindness Day 2026: a workplace thank-you round video
World Kindness Day is Friday 13 November 2026. Turn five silent colleague clips into one 30-second thank-you video with name cards, $0.30 on Sume.
Written by Sume