Accessibility
· 24 checks — Landmarks, headings, alt text, forms, and link quality rolled into one auditable list.F404 Error PageActionHTTP 404, bare pageFIX
DPrint StylesheetActionNo print stylesFIX
BLandmark Structure15 landmarksREVIEW
Add a skip link as the first focusable element so keyboard users can bypass repeated navigation.
Without a skip-nav link, keyboard users tab through every nav item before reaching content — every page, every visit.
Learn more ▾ ▴
WCAG 2.4.1 (Bypass Blocks) requires a mechanism to skip past repeated content. The standard implementation is a 'Skip to main content' link that's the first focusable element, visually hidden until focused. Three lines of HTML + four of CSS.
Source: WCAG 2.1 SC 2.4.1
BMobile-Readable Font Sizes90% of visible text renders at >= 12 CSS px (28 below threshold)REVIEW
BFavicon & Branding6 icon(s) detectedREVIEW
BDark Mode SupportDark mode detectedREVIEW
Detection limited to meta tags and inline styles.
A+Heading Hierarchy53 headingsPASS
- H1 EDIT ANY PHOTO BY TYPING WHAT YOU WANT
- H2 Editor
- H2 Create
- H2 Result
- H2 Studio-ready product shots from everyday clutter
- H2 THREE STEPS. NO LAYERS.
- H3 Upload
- H3 Describe
- H3 Download
- H2 SEVEN MODES. ONE OMNICREATOR WORKSPACE.
- H3 Replace background
- H3 Remove objects & watermarks
- H3 Product photo
- H3 Change outfit
- H3 Relight
- H3 Custom edit
- H3 Text to image
- H2 ONE EDITOR. SIX EVERYDAY JOBS.
- H3 Background Replace
- H3 Object Removal
- H3 Product Photos
- H3 Outfit Change
- H3 Photo Relighting
- H3 Text to Image
- H2 WHAT ONE PROMPT CAN DO
- H3 Product photo
- H3 Replace background
- H3 Remove objects & watermarks
- H2 WHY NOT JUST USE…
- H2 What we promise
- H3 Failed edits are free
- H3 Free daily credits
- H3 Your photos are not kept
- H3 Reply in 1 business day
- H3 No surprise charges
- H3 Full-size downloads
- H3 Tried it? Tell us
- H2 OMNICREATOR FAQ
- H3 How do free credits work in Omni Creator?
- H3 What file types work?
- H3 How do you handle my photos?
- H3 Can I use results commercially?
- H3 What content is not allowed?
- H3 Will every edit look perfect?
- H3 How long does a generation take?
- H3 Are paid plans available?
- H3 Do I need an account?
- H3 How fast is support?
- H2 YOUR NEXT EDIT IS ONE PROMPT AWAY
- H2 GUIDES & PROMPT TIPS
- H3 AI Image Editing Prompts: 12 Patterns
- H3 AI Product Photos for E-commerce
- H3 Relight Photos with AI: Light Prompts
A+Heading Text Quality1 heading-text-quality issue(s) detectedPASS
A+Alt Text QualityAll 22 images OKPASS
A+Form AccessibilityAll 5 controls labeledPASS
| Control | Type | Label | Method |
|---|---|---|---|
| #studio-image | file | Photo (required) | for/id |
| #studio-prompt | textarea | Prompt | for/id |
| input | range | Product photo: Drag to compare before and after | aria-label |
| input | range | Replace background: Drag to compare before and after | aria-label |
| input | range | Remove objects & watermarks: Drag to compare before and after | aria-label |
A+Link & Button Quality78 links, 36 buttons — all OKPASS
| Element | Text | Issue | Suggested Fix |
|---|---|---|---|
| / | Omni Creator | img no alt | Add alt attribute to the image |
| / | Omni Creator | img no alt | Add alt attribute to the image |
| /blog/ai-image-editing-prompts | PromptingAI Image Editing Prom… | img no alt | Add alt attribute to the image |
| /blog/ai-product-photos-for-ecommerce | E-commerceAI Product Photos fo… | img no alt | Add alt attribute to the image |
| /blog/relight-photos-with-ai | GuidesRelight Photos with AI: … | img no alt | Add alt attribute to the image |
| mailto:support@omnicreator.art | Email support | new tab | Add '(opens in new tab)' to text |
Add '(opens in new tab)' to link text or aria-label.
mailto:support@omnicreator.art
Links with target="_blank" without rel="noopener" leak the originating page's window context — security and UX issue.
Learn more ▾ ▴
Without rel="noopener", the new tab can navigate the original tab via window.opener (tab-nabbing attack). Modern browsers default to noopener for target=_blank but only since recent versions. Always set rel="noopener noreferrer" explicitly.
Source: MDN target / OWASP
A+Form Input Types5 form control(s) checked, no type mismatchesPASS
A+Form Input Quality5 form control(s) checked, no input-semantic issuesPASS
A+Mobile Keyboard & AutofillNo autofill-eligible form controlsPASS
A+Document LanguageLang attribute set to "en"PASS
A+Tabindex Anti-Patterns1 explicit tabindex attribute(s) checked, no anti-patternsPASS
A+Iframe AccessibilityNo iframes on this pagePASS
A+Tap Target AdequacyAll tap targets meet WCAG 2.5.5/2.5.8 sizingPASS
A+Web ManifestPWA-readyPASS
A+PWA Depth1 PWA signal(s) surfacedPASS
A+Mobile UX Depth1 mobile-depth signal(s) detectedPASS
A+Color Contrast (Screenshot)20 text elements analyzed, 0 fail WCAG AAPASS
Analyzes text contrast against the actual rendered page, including background images, gradients, and overlays that CSS-based tools cannot detect.
Show all checked elements (20)
| Element | Ratio | Required | FG | BG | Result |
|---|---|---|---|---|---|
| h1 EDIT ANY PHOTO BY TY… | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 Editor | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 Create | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 Result | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 Studio-ready product… | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 THREE STEPS. NO LAYE… | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 SEVEN MODES. ONE OMN… | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 ONE EDITOR. SIX EVER… | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 WHAT ONE PROMPT CAN … | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 WHY NOT JUST USE… | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 What we promise | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 OMNICREATOR FAQ | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 YOUR NEXT EDIT IS ON… | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h2 GUIDES & PROMPT TIPS | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h3 Upload | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h3 Describe | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h3 Download | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h3 Replace background | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h3 Remove objects & wat… | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
| h3 Product photo | 16.67:1 | 3.0:1 | #000000 | #E5E5E5 | Pass |
Methodology: The top 20 text elements by font size were checked. Background color was sampled from the desktop screenshot using a 5-point pattern. WCAG 2.1 AA requires 4.5:1 for normal text and 3:1 for large text.
A+Lighthouse Accessibility AuditsScore 97/100 — 2 failing, 29 passedPASS
Accessibility
These checks highlight opportunities to improve the accessibility of your web app. Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so manual testing is also encouraged.
Contrast
Low-contrast text is difficult or impossible for many users to read. Learn how to provide sufficient color contrast.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
Daily check-in · +10 credits div.flex > div.flex > div.flex > span.text-xs |
MODES div.container-oc > div.flex > div.flex > p.font-mono |
2 credits div.flex > div.flex > button.shrink-0 > span.ml-1.5 |
2 credits div.flex > div.flex > button.shrink-0 > span.ml-1.5 |
2 credits div.flex > div.flex > button.shrink-0 > span.ml-1.5 |
2 credits div.flex > div.flex > button.shrink-0 > span.ml-1.5 |
2 credits div.flex > div.flex > button.shrink-0 > span.ml-1.5 |
1 credit div.flex > div.flex > button.shrink-0 > span.ml-1.5 |
PHOTO (REQUIRED) div.rounded-[32px] > form.flex > div.flex > label.flex |
Output keeps your photo’s aspect ratio. div.grid > div.rounded-[32px] > form.flex > p.flex |
PROMPT div.rounded-[32px] > form.flex > div.flex > label.flex |
Try an example form.flex > div.flex > div.flex > p.text-xs |
0/4000 div.rounded-[32px] > form.flex > div.flex > p.text-right |
Pick an example below or upload your own. Sign in with Google to generate in th… div.rounded-[32px] > div.mt-4 > div.flex > span.max-w-sm |
TRY AN EXAMPLE CASE div.mt-4 > div.flex > div.mt-1 > p.mb-2 |
Examples load into the editor — sign in to Generate. div.mt-4 > div.flex > div.mt-1 > p.mt-2 |
01 div.mt-12 > a.group > div.flex > span.font-mono |
02 div.mt-12 > a.group > div.flex > span.font-mono |
03 div.mt-12 > a.group > div.flex > span.font-mono |
04 div.mt-12 > a.group > div.flex > span.font-mono |
05 div.mt-12 > a.group > div.flex > span.font-mono |
06 div.mt-12 > a.group > div.flex > span.font-mono |
07 div.mt-12 > a.group > div.flex > span.font-mono |
AI BACKGROUND REPLACE div.grid > a.group > div > p.font-mono |
AI OBJECT REMOVER div.grid > a.group > div > p.font-mono |
AI PRODUCT PHOTOGRAPHY div.grid > a.group > div > p.font-mono |
AI OUTFIT CHANGER div.grid > a.group > div > p.font-mono |
AI RELIGHTING div.grid > a.group > div > p.font-mono |
AI TEXT TO IMAGE div.grid > a.group > div > p.font-mono |
“Clean white studio product shot” div.mt-12 > div.group > div.flex > p.min-h-[2.5rem] |
“Soft new background, subject kept sharp” div.mt-12 > div.group > div.flex > p.min-h-[2.5rem] |
“Remove unwanted objects naturally” div.mt-12 > div.group > div.flex > p.min-h-[2.5rem] |
Based on publicly described features as of 2026; competitors change often. Pick… div.flex > section#why > div.container-oc > p.mt-4 |
01 div.mt-12 > div.flex > div.flex > span.font-mono |
02 div.mt-12 > div.flex > div.flex > span.font-mono |
03 div.mt-12 > div.flex > div.flex > span.font-mono |
04 div.mt-12 > div.flex > div.flex > span.font-mono |
05 div.mt-12 > div.flex > div.flex > span.font-mono |
06 div.mt-12 > div.flex > div.flex > span.font-mono |
These are opportunities to improve the legibility of your content.
Visible text labels that do not match the accessible name can result in a confusing experience for screen reader users. Learn more about accessible names.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
Install app div.flex > div.fixed > div.group > button.inline-flex |