Brand books Draft · facts being checked

Brand book

Python

Python's brand is the interpreter. The site leads with runnable code, marks every link with ">>>", and lets the logo's two colours do the rest, so the brand feels like using Python rather than being sold it. Our reading

The system

Fixed, everywhere

Python logo
Logo
Python blue
Signature color
AaFlux + Source Sans Pro
Type pairing
  • The two-snakes shape, unaltered and never mirrored, with its TM
  • Python blue #3776AB and Python yellow #FFD343: blue frames, yellow acts
  • Source Sans Pro for text; Flux (or its stand-in) only for short labels
  • ">>>" as the read-more mark
  • Python as an adjective; the PSF never shown endorsing anything

The one thing that varies

The colours inside the snakes (with permission) and the code sample shown; everything else on python.org is a fixed system

Source: python.org/psf/trademarks-faqs3.dualstack.us-east-2.amazonaws.com/pythondotorg-assets/media/files/Python-Logo-Usage-Guidelines-v1.0.pdf

How loud each format gets

Silent
QuietDocs or guide pageProposal page
CalmDeck
WarmLanding page
LoudEvent or community page
Loudest

Our engine's setting, built from their rules.

Every piece passes 3 checks

Logo hidden

Cover the snakes. It should still read as python.org: blue gradient frame, yellow actions, ">>>" read-more links, a code panel, Source Sans text.

Monochrome test

Flatten any logo use to one colour: the outline, gaps, chins and eyes must match the original exactly (the FAQ's own test).

Trademark check

TM on the logo, Python as an adjective, no implied endorsement, non-affiliation notice when needed.

Strategy

A programming language that lets you work quickly and integrate systems more effectively. Observed

01

Quick and easy to learn

Beginners find the syntax clean; experienced programmers pick it up very quickly. Observed

02

Readable, productive code

Simple syntax that emphasises readability, a fast edit-test-debug cycle and no compile step. Published

03

Use it for everything

Web, GUI, AI and machine learning, science, software development and system administration, backed by PyPI. Observed

04

Free, open and community-run

OSI-approved licence, usable commercially, stewarded by a non-profit foundation and its members. Published

Functions Defined
homepage hero slide 1 · python.org/%20(2026-10-31)
Quick & Easy to Learn
homepage hero slide 5 · python.org/%20(2026-10-31)
Get Started
homepage widget · python.org/%20(2026-10-31)
Full spec
For Observed
Newcomers to programming and experienced developers alike, plus the community that builds and funds Python (Get Started widget; PSF band).
Problem Published
Development speed and maintenance cost: compile steps, hard-to-read code and glue work between systems (paraphrase of the executive summary).
Promise Observed
Work quickly and integrate systems effectively, with a language that is easy to learn and to read.
PSF mission (quoted in part, the rest paraphrased) Published
To "promote, protect, and advance the Python programming language", and to help a diverse, international community of Python programmers grow.

Proof behind each pillar

Story Published

The PSF is a non-profit that holds Python's intellectual property, produces the free core distribution and protects the Python name; its mission statement was approved in 2002 and amended through 2009. The two-snakes logo was drawn by Tim Parkin around 2005, when Python moved from a "cute" animal icon to a mark balancing formality and playfulness, and he assigned it to the PSF. python.org has carried a copyright line since 2001.

Values

Readability counts

Code is read more often than written; clarity wins (PEP 20 aphorism).

Published
Simple is better than complex

Choose the plain way; the docs echo it with economy of expression (PEP 20).

Published
Explicit is better than implicit

Say what you mean in code and in prose (PEP 20).

Published
Diverse and international community

Part of the PSF mission; also why the docs ask for simple English and inclusive terms.

Published
Free to use

PSF licences keep the rights to obtain, use, redistribute and modify (paraphrase).

Published

Category. General-purpose, interpreted, high-level open source programming language Published

Why them

  1. Readable syntax that lowers the cost of program maintenance. Published
  2. A large standard library plus PyPI's third-party modules. Published
  3. Free, OSI-approved licence that allows commercial use. Published
  4. No compilation step: a fast edit-test-debug cycle. Published
  5. A non-profit foundation and a global community of conferences and user groups. Published

Instead of

Other programming languages: experienced programmers "in any other language" are invited to switch (hero slide).

Boilerplate Published

Python is an interpreted, object-oriented, high-level programming language with dynamic semantics, a clean, readable syntax and a large standard library, available free for all major platforms. It is developed under an OSI-approved open source license administered by the Python Software Foundation.

Taglines

lets you work quickly and integrate systems more effectively Observed

Python Powered Published

They never claim

  • Never imply the PSF endorses a course, book, project or certification; it endorses none (FAQ). Published
  • Never claim exclusivity ("The Python Academy", "Python Inc.") or official status. Published
  • Never use the logo to refer to anything but the Python programming language. Published

The homepage carries no slogan. It states one sentence (Python lets you work quickly and integrate systems more effectively), then proves it with code, a version number, news and a list of uses. The PSF adds its mission and two asks: become a member, donate.

Source: python.org/%20(2026-10-31)python.org/aboutpython.org/doc/essays/blurbpython.org/psf/mission

Personality and voice

Readablebut not CleverPublished
Simplebut not EsotericPublished
Confidentbut not AlarmistPublished
Respectfulbut not CondescendingPublished
Inclusivebut not ExclusionaryPublished
Practicalbut not PuristPublished

For example, use a with statement to close the file.

Do Affirmative and plain: what to do, in English words.

Warning: experts only, e.g. files may be lost.

Don’t Alarmist, judgemental and Latin.

Built with the Python programming language

Do Python as an adjective before a generic noun.

Python your software today!

Don’t The policy's own example of the trademark misused as a verb.

A world-wide, mixed-experience audience reads faster when the language is simple, affirmative and free of jargon or alarm.

Full spec
  • Title case headlines
  • In documentation, sentence case section titles are preferred; consistency within a unit matters more
  • Use simple language; avoid esoteric phrasing for a world-wide audience
  • Say “for example”, not “e.g.”
  • Say “that is”, not “i.e.”
  • Spell out an acronym at first use, full term first with the acronym in parentheses; HTML and UTF-8 need no expansion
  • Say “allowlist”, not “whitelist”
  • Say “blocklist”, not “blacklist”
  • Say “main, parent/child, server/client, primary/secondary”, not “master/slave”
  • Say “free-threaded”, not “No-GIL”
  • Hyphenate open-source as an adjective (open-source software); no hyphen as a noun (open source is a collaboration model)
  • Python is always capitalized; Unicode capitalized; reST starts lowercase; POSIX uppercase
  • Affirmative tone: state what the language does; no "dangerous" or "experts only" except real security risks
  • Economy of expression: err on the side of succinct
  • No author bylines on community documentation
  • Use "Python" as an adjective followed by a generic noun; never as a verb
  • First or most prominent mention of the Python word mark takes ®, except email, online discussion, non-graphical ads and academic papers
  • Third parties add a notice: "Python" and the Python Logo are trademarks of the PSF, and a non-affiliation line

PlainWelcomingConfidentPrecise

Python publishes writing rules for its documentation (devguide style guide) and, through PEP 20, the values behind them. The homepage voice is short, friendly and factual, with Title Case labels.

  • Simple English; spell out acronyms at first use
  • "for example" and "that is", never e.g./i.e.
  • allowlist/blocklist, main/primary, free-threaded
  • Affirmative: say what works and how
  • Be succinct; short concrete code examples
  • No bylines on community docs
  • "Python" as an adjective before a generic noun
  • Two voices. The python.org homepage speaks in short, friendly, factual lines to newcomers and experienced developers alike; Title Case labels, a code sample as the hero, links named after where they go. The documentation voice (devguide style guide) is plainer still: simple words for a world-wide audience, affirmative statements, no hype.
  • A landing page follows the homepage voice and anatomy. The docs rules (simple language, no Latin abbreviations, inclusive terms, affirmative tone) apply to all body copy.
  • Respect the reader's intelligence: lay out the information and connect the dots without talking down (devguide, Audience).
  • State what Python does and how to use it well; leave value judgements like "experts only" out (devguide, Affirmative tone).
  • Trademark grammar: "Python" is an adjective before a generic noun (the Python programming language), never a verb (PSF trademark policy).
  • Show, then tell: the homepage leads with runnable code and a one-line explanation, the way the docs prefer short concrete examples.

Their words

allowlistblocklistfree-threadedfor examplethat is

Never

whitelistblacklistmaster/slavee.g.i.e.experts onlyNo-GIL

Source: peps.python.org/pep-0020devguide.python.org/documentation/style-guidepython.org/psf/mission

  • Don’t talk down to the reader
  • Don’t write "experts only" or "dangerous"
  • Don’t use Python as a verb
  • Don’t imply PSF endorsement
Toneplain, welcoming, confident, precise
Web labelsTitle Case (observed)
Docs titlessentence case preferred
Read more>>> + destination name
Trademark® on first prominent use in formal pieces

Source: devguide.python.org/documentation/style-guidepeps.python.org/pep-0020python.org/psf/trademarkspython.org/%20(2026-10-31)

Color

Donate
Do Yellow action on the blue frame.

Read the docs

Don’t Yellow text on a light ground disappears.

The logo's two colours become the site: blue for every frame, yellow for every action, so the page reads as the logo even without it.

Full spec
  • Blue grounds are always the #1E415E to #2B5B84 vertical gradient (10% to 90%)
  • Yellow #FFD343 marks actions, headings and links on blue only
  • Light pages: #444444 text on #F9F9F9 with #3776AB links
  • Network colours appear only as 3px tab rules
  • Logo colours may change only under the trademark rules
  • Don’t set body text in yellow on light grounds
  • Don’t fill large areas with the tab colours
  • Don’t invent a new accent for buttons
Python blue#3776AB
Python yellow#FFD343
Blue gradient#1E415E to #2B5B84
Ink#444444
Paper#F9F9F9 / #FFFFFF

No colour page is published. The colours come from the official logo files (blue and yellow snake gradients) and from python.org's open-source stylesheet, which names them: Python blue #3776AB, Python yellow #FFD343, blue-dark #1E415E, blue-medium #2B5B84, plus greys and a green, purple and red used only to code the network tabs.

Not published: colour proportions; print values (PMS, CMYK); contrast rules.

Source: github.com/python/pythondotorg/blob/main/static/css/style.cssgithub.com/python/pythondotorg/blob/b806afadb9ed2e3e8e923678c07d94f649249190/static/sass/_base.scsspython.org/static/community_logos/python-logo-generic.svgpython.org/%20(2026-10-31)

Typography

lets you work quickly and integrate systems more effectively

Aa
FluxDisplay · open stand-in Abel
Aa
Source Sans ProText · open stand-in Source Sans 3

Get Started

Do Flux (Abel stand-in) for a two-word label.

Whether you're new to programming or experienced, it's easy to learn.

Don’t A paragraph in the label face.

A narrow geometric face for labels echoes the wordmark; a sturdy humanist sans keeps long text readable.

Full spec
Their faceUseLicenseOpen stand-in
Flux (Flux Regular / Flux Bold)The logo wordmark; on python.org widget and band titles, >>> marks, footer headings and linksCommercial; the PSF owns a copy but cannot distribute it except for PSF workAbel
Calibrated against Flux on python.org: Abel is within +2.3% to +5.2% line width and about 2% ink darkness on the site's own headings, with the same narrow, light, geometric feel; set it at 97% to match width. Source Sans Pro, the site's own fallback, runs 12-14% wider.
Source Sans ProAll text: Regular, Bold and Italic as separate familiesOpen (SIL OFL 1.1), Adobe; webfont files ship in the open-source site repo with the OFL textSource Sans 3
The real files are supplied (fonts/). Source Sans 3 is the same family's current release on Google Fonts.
Consolas (system stack)Hero code sample onlySystem fonts (Consolas is Microsoft's; the stack ends in Courier New and generic monospace)Inconsolata
Use the site's stack as-is so macOS renders Courier New like the reference; Inconsolata is the open face drawn after Consolas if a webfont is required.
  • Source Sans Pro for all text; bold and italic are separate files
  • Flux, or the Abel stand-in at 97% size, for labels of a few words only
  • Code in the monospace stack
  • Base 16px/28px rhythm (published CSS tokens)
  • Title Case for widget labels on the site
  • Don’t set paragraphs in Flux or its stand-in
  • Don’t synthesise bold from Regular
  • Don’t distribute the Flux files
WordmarkFlux Regular
LabelsFlux-Regular 24.15px; Flux-Bold 17.5-18px
TextSource Sans Pro 15-16px
Base16px/28px
Scalegiga 40, mega 36, kilo 32, h1 28, h2 24, h3 21, h4 18 (Sass variables)

The logo names its face: Flux Regular, which the PSF cannot distribute. python.org uses Flux webfonts for short labels (widget titles, >>> marks, footer headings) and Source Sans Pro (open, OFL) for everything else, with Georgia italic for quotes and a system monospace stack for code.

Source: python.org/community/logospython.org/psf/trademarks-faqgithub.com/python/pythondotorg/blob/main/static/css/style.cssgithub.com/python/pythondotorg/blob/b806afadb9ed2e3e8e923678c07d94f649249190/static/sass/_base.scsspython.org/%20(2026-10-31)

Graphic elements

python

Do blue snake (gradient #5A9FD4 to #306998) and yellow snake (gradient #FFD43B to #FFE873) interlocked with exact gaps, chins and eyes; colours may change, the outline may not; optional soft grey shadow below. One prominent device per view.

python

Don’t mirror it, separate the snakes, drop an eye, outline it in a way that changes the gaps, or let graphics cross the outline.

The two-snakes device · logo, PSF band (large, cropped), favicon, Use Python for… title glyph

>>> Learn More

Do "›››" (three U+203A single right-pointing angle quotes) set in Source Sans Pro Bold 700 at 144% of the surrounding text size, letter-spacing -0.0625em, 0.25em gap before the label, in the link colour. NEVER type three ">" characters and NEVER set the mark in Abel: Flux's ">" is a narrow chevron, and Abel's ">" is a broad wedge twice as wide (47.3px vs 24.0px at 28.8px). Measured 2026-10-31 on python.org: Flux ">>>" 28.8px = 24.0px wide; SSP Bold "›››" 34.56px = 23.8px wide, same chevron shape. One per link, never in body sentences.

→ Learn More

Don’t swap in arrows or chevrons; the prompt is the brand's arrow.

Interpreter prompts as punctuation · every read-more link (">>> Learn More", ">>> More news"), the PSF band title, the ">_" shell button, breadcrumbs

>>> fib(1000)

Do a short interactive-session sample (>>> and ... prompts, output lines) on #1E2933 in a monospace stack, beside a navy copy panel naming the feature in yellow. One code panel per page.

Unleash limitless productivity

Don’t replace the code with stock photography or illustration, or leave a trailing unused >>> prompt (devguide).

Runnable code as the hero image · homepage carousel; docs examples

Donate
Do the logo's two colours run the page: Python blue gradients (#1E415E to #2B5B84) for the frame, Python yellow #FFD343 for every action and highlight on it. Yellow marks actions and headings only.
Donate
Don’t introduce a third accent for actions; the network colours (green, purple, red, grey) belong to the tab rules only.

Blue ground, yellow action · header, PSF band, footer base

Python PSF Docs PyPI Jobs Community

Do six equal tabs, each with a 3px top rule in its own colour: Python #3776AB, PSF #78797A, Docs #FFD343, PyPI #82B043, Jobs #A06BA7, Community #B55863; the current site gets a white label and an 8px triangle. One network bar at the very top.

Python PSF Docs

Don’t colour the labels themselves; colour lives in the 3px rule.

Colour-coded network tabs · the top Python Network bar on every python.org page

Specimens use sample copy, not Python’s.

The prompt marks make every page feel like the interpreter (our reading); the gloss is restrained to small controls so text stays plain.

Full spec
  • ">>>" (Flux, 120%) before read-more links
  • 4px #75A8D3 top rule on every widget
  • Buttons: vertical two-stop gradient, 1px border, 6px radius
  • Hairlines #CACCCE between list rows
  • Quotes in a yellow Georgia-italic bubble with a downward tail
  • Don’t use arrows or chevrons for read-more
  • Don’t round cards or add drop shadows to widgets
Prompt">>>" Flux 120%, -0.0625em
Widget rule4px #75A8D3
Button radius6px
Notice radius16px

The recognisable bits are interpreter marks and early-web gloss: ">>>" before every read-more link, a ">_" shell button, code panels, small gradient buttons with 6px corners and a white text-shadow, widgets topped by a 4px light-blue rule, and a yellow quote bubble with a tail.

Source: python.org/%20(2026-10-31)github.com/python/pythondotorg/blob/main/static/css/style.css

Iconography

21px widget
28px search

Icons are an IcoMoon icon font called Pythonicon, served from the site repo: filled single-colour glyphs (power button, download arrow, document, briefcase, newspaper, calendar, the two-snakes) in Python blue before widget titles.

Full spec
  • One glyph before a widget title, 87.5% of its size, #3776AB
  • Filled shapes, one colour
  • Use the Pythonicon file (supplied) rather than drawing new icons
  • Don’t mix outline icon sets with the filled glyphs
  • Don’t colour icons yellow on light grounds
Formaticon font (Pythonicon, IcoMoon)
Size21px with 24px titles
Colour#3776AB

Source: github.com/python/pythondotorg/tree/main/static/fontspython.org/%20(2026-10-31)

Illustration

Code is the illustration: it shows the product itself.

Full spec
  • Prefer a code sample to an illustration
  • Community art may decorate inside the snakes without touching the outline
  • Don’t invent mascots (the pre-2005 animal icon was dropped on purpose)
Stylenot published

Python publishes no illustration style and the homepage uses none. The only graphic beyond the logo and icons is code. The FAQ shows community logo designs (PyCon Zimbabwe, PyCon Israel, PyCon China) as approved derivatives, which is the nearest thing to an illustration guide.

Source: python.org/psf/trademarks-faq

Photography

No photography guidance is published and the homepage carries no photographs.

Full spec

No photography guidance is published and the homepage carries no photographs. Success stories are text quotes.

  • No photography on a landing page; use code and quotes
Stylenot published

Source: python.org/%20(2026-10-31)

Motion

Motion is minimal: the hero carousel fades every 8 seconds (slides on touch), dropdowns open after a 0.25s delay, and a published default transition of 0.3s.

Full spec
  • One animated element per page at most (the carousel); build its first slide as the static state
  • Transitions 0.3s
  • Pause rotation on hover
  • Don’t animate the logo
Carouselfade 600ms every 8000ms
Transition0.3s (published token)
Dropdown delay0.25s

Source: github.com/python/pythondotorg/blob/main/static/css/style.csspython.org/static/js/main-min.b1e587ad1920.jspython.org/static/stylesheets/mq.ab4b4ea88926.css

Interface & layout

The page, band by band

Python Network bar
Hero carousel
Intro line
Notice bar
Small widgets
List widgets
Stories and uses

Buttons

Full spec

A fixed 1200px container on every band, a published 12-column Susy grid (60px columns, 20px gutters) rendered as four or two equal widget columns, and a blue header that holds the network bar, logo row, nav, hero and intro in one gradient. Light content sits between blue header and blue footer base.

Measured from python.org's Logo rules from the PSF logo page, trademark policy, trademark FAQ and Python Logo Usage Guidelines PDF v1.0; colour and type tokens from the open-source python.org stylesheet (python/pythondotorg); page anatomy measured on www.python.org at 1440 and 390 with Playwright, 2026-10-31.

Spacing

MeasureDesktopPhone
Page margin144px4px
Section padding40px4px
Hero text widthmax 1096px, centeredfull width
Card gap24px24px
Navigation55px55px

Type, at size

Widget / band title (Flux-Regular)

Flux (Flux Regular / Flux Bold) · 24.15px · line 1.25 · weight 400

Intro line

Source Sans Pro · 24px (phone 20) · line 1.4 · weight 400

Slide heading

Source Sans Pro · 21px · line 1 · weight 700

Main nav item

Source Sans Pro · 18px · line 1.625 · tracking 0.18px · weight 400

Footer base link (Flux-Bold)

Flux (Flux Regular / Flux Bold) · 18.11px (phone 20.7) · line 1.625 · weight 400

Sitemap heading (Flux-Bold)

Flux (Flux Regular / Flux Bold) · 17.5px (phone 20) · line 1.625 · weight 400

Quote

Source Sans Pro · 18px (phone 16) · line 1.75 · weight 400

Body

Source Sans Pro · 16px · line 1.625 · weight 400

Widget text

Source Sans Pro · 15px (phone 16) · line 1.625 · weight 400

Sitemap link / attribution

Source Sans Pro · 14px (phone 16) · line 1.625 · weight 400

Tag

Source Sans Pro · 13.125px (phone 14) · line 1.625 · weight 400

Copyright

Source Sans Pro · 11.9px (phone 10.2) · line 1.625 · weight 400

Code sample

Consolas (system stack) · 16px · line 1.5 · weight 400

Motion
Hero carousel fades every 8s (600ms; slides on touch devices); default transition 0.3s; dropdowns open after a 0.25s delay
Buttons
rounded

Page anatomy

How Python’s own landing pages are built, observed on python.org, 2026-10-31. The full measurements are in spec.md.

Navigation
Three stacked strips on one blue header: a dark Python Network bar of six equal colour-coded tabs; a header row with the white-wordmark Python logo at left and, at right, a yellow Donate button and a dark rounded options bar (search, GO, Socialize); then a glossy blue rounded main-nav bar of seven centred items.
Hero
Inside the blue header, under the main nav: a 980x304 two-panel carousel. Left half is an interactive-shell code sample in a monospace stack on the darkest navy with a yellow ">_" launch button; right half is a navy copy panel with a yellow 21px heading, three to four lines of grey-white text with a yellow underlined link, and five small numbered blue buttons. Under it, a centred two-line intro sentence in light grey with a yellow ">>> Learn More" link.
Notice bar
A rounded yellow pill-bar announcing one item, centred text and a grey See more button; the first thing in the light content band.
Four small widgets: Get Started, Download, Docs, Jobs
Four equal columns, each topped by a 4px light-blue rule, an icon-font glyph plus a Flux title, two or three lines of text and one blue link.
Latest News and Upcoming Events
Two half-width list widgets: icon + Flux title, a grey ">>> More" link top-right, then five dated rows split by hairlines.
Success Stories and Use Python for…
Left: a big yellow italic quote bubble with a tail and a grey attribution strip. Right: six application rows, each a bold label followed by small grey tag chips.
Python Software Foundation band
A full-width blue box (same gradient as the header) with a yellow ">>> Python Software Foundation" title, the PSF mission in light grey, a yellow Learn more link, two yellow buttons, and the large two-snakes device at right.
Footer
A pale grey sitemap of six columns (eight groups, two stacked) with blue Flux-Bold headings and grey links, then a blue base strip with four centred Flux-Bold links, a green status dot and a tiny copyright line.

Source: github.com/python/pythondotorg/blob/b806afadb9ed2e3e8e923678c07d94f649249190/static/sass/_base.scsspython.org/static/stylesheets/mq.ab4b4ea88926.csspython.org/%20(2026-10-31)

In use

Full spec

How our engine applies Python's system to each format. Our recipe from their published rules and observed site, not something the PSF publishes. Level = how much blue gradient, yellow and prompt marks a format carries (0 plain, 5 full).

FormatWhat they didSource
Python Powered badgeWide (200x80 down to 70x28) and tall (140x182 down to 50x65) badges for software built with Python, plus SVG sources.python.org/community/logos
conference logosDerived logos for PyCons and user groups, approved by the Trademarks Working Group when the outline is kept.python.org/psf/trademarks-faq
merchandiseNon-commercial T-shirts and stickers with the unaltered logo are fine; selling needs permission and a suggested donation.python.org/psf/trademarks-faq
books and coursesNominative use of the logo; a TM notice in the imprint.python.org/psf/trademarks-faq
PyPIA related reserved logo maintained by the PSF for the Package Index.python.org/psf/trademarks-faq

Our setting for each format

FormatLoudnessMust appearWhat varies
Landing pageBuild it the way www.python.org is built (kit.spec.page, homepage voice): dark network bar with six colour-ruled tabs; blue gradient header with the light-wordmark logo at left, yellow Donate and a dark options bar at right; glossy blue rounded nav; two-panel code carousel at rest on slide 1; centred grey intro with yellow ">>> Learn More"; light content band with a yellow notice, 4-up then 2-up widgets with 4px light-blue rules and Flux titles; blue PSF-style band with yellow buttons and the large device; grey sitemap; blue basewhich widgets and how many rows; the code sample shown; the notice (or none)
Docs or guide pageInner-page shell: same header, Source Sans Bold #3776AB headings, 15px/28px text, sidebar widget in blue; devguide voicesection nav colour by site area (PSF pages use a grey #646565 nav)
DeckCombined logo with TM, blue gradient title slides, Source Sans Pro, one code sample per idea, yellow for the one actionlight content slides
Proposal pageLight ground, #444444 text, #3776AB links, one yellow action; the non-affiliation notice if not the PSFa code panel when the subject is technical
Event or community pageUnaltered logo or an approved derivative, TM, approval for any derived logo; yellow and bluedecoration inside the snakes that never touches the outline

Rules

Do

  • Use the unaltered logo with TM; ask before any derivative
  • Never mirror or reshape the snakes
  • Python as an adjective, ® on first prominent use in formal pieces
  • Add the non-affiliation notice when you are not the PSF
  • Blue frames, yellow acts
  • Code before claims
  • Simple, affirmative, inclusive English

Don’t

  • imply PSF endorsement or certification
  • name a company or product "Python ..." without approval
  • sell merchandise with the logo without permission
  • redistribute the Flux font

Source: python.org/psf/trademarkspython.org/psf/trademarks-faqpython.org/community/logosdevguide.python.org/documentation/style-guide

Steal this kit

Your name and logo, Python’s system.

Comes with you

  • Color roles and how much of each
  • Type pairing, with open fonts
  • Voice rules the writing check enforces
  • Icon, photo, illustration and motion recipes
  • The strategy frame, to fill with yours

Stays yours

  • Your name and logo
  • Your proof: numbers, customers, quotes
  • Your purpose and claims. Theirs aren’t yours to make

Use this kit for my brand Use this brand in Claude

Hand it to a developer

Your brand next

Get your brand audit Put your brand in Claude What goes in a brand book

What Python doesn’t publish
  • Clear space around the logo: not published.
  • Minimum logo size: not published (the smallest supplied Python Powered badges are 70x28 and 50x65 px).
  • A brand colour page, colour proportions and print values (PMS, CMYK): not published. Hexes come from the official SVG and the open-source site stylesheet.
  • A type scale for brand pieces: not published beyond the site's Sass size variables (40/36/32/28/24/21/18) and 16px/28px base.
  • Flux webfont licence for third parties: not available (the PSF cannot distribute Flux); the book uses Abel as a calibrated stand-in.
  • Illustration, photography and motion guidelines: not published.
  • A tagline: none published; the homepage intro sentence is the closest.
  • The colour of the light-wordmark header logo is not published as a lockup on the logo page; it is observed on the site only.
  • Live content (notice, news, events, success story, release "Python 3.15.2") observed 2026-10-31; it changes.
  • The PDF usage guide is v1.0 and undated.

Each value is marked published, observed, our reading or our recipe, with its source. Checked 2026-10-31. Not affiliated with Python.