An independent case study by Mousa Batarseh for the eCommerce Specialist role at Extended Stay America. October 23, 2026.
A property page passes review. Then the scan finds it.
Small updates go into hotel pages every week: a pet fee, new photos, a promo. Each one looks fine on its own. Scroll to watch what a scanner sees, and what it misses.
The scan marked itA reader marked it
What a scanner sees, and what it misses
The scanner pass
An accessibility platform reads the code. It flags missing button names, small targets, filenames used as alt text, and "Click here" links.
Read it like a guest
Two prices for one pet fee. Two photos named "Exterior". An app missing an amenity. A field hidden by a sticky bar. Valid code, wrong page.
Scanner flagsOnly a person catches
In this demo, a scanner flags 6 of 10 findings. The other 4 need a person reading the page.
Riverbend Demo Suites
Fictional property page after eight content changes
Eight tickets. Pick what ships.
Every finding above came from an ordinary content change. Turn tickets on or off. The demo below follows your choice.
The preflight
Riverbend Demo Suites is fictional. Its layout follows a public ESA property page: rooms, amenities, policies, FAQs, nearby places. Each finding points to its field. Mark it fixed and watch the page and the verdict change.
Premier Suites Riverbend - Lakeside
Stay 7+ nights, save 20%.
Website: 12 amenities.
Pet fee:
Check-in, Check-out, Guests
Sticky booking bar, 72px, bottom of the screen
Ship, patch, or hold
The rule: hold for wrong guest facts and for failures on the booking path. Patch for other A and AA issues. Ship minor items with an owner.
After release, check the live page
A fix is done when someone checks the live page, not when the ticket closes. Mark each check and see what reopens.
How the preflight works
Three questions for every change
- Does every fact match? A fee, an amenity or an hour lives in more than one block and in the app. Change one, search for the rest.
- Does the change meet WCAG 2.2 A and AA? Only the criteria a content change touches: alt text, headings, link text, names on controls, target size, focus.
- Does the SEO field follow the pattern? Title, description and headings follow the format the site already uses on its property pages.
A scanner finds missing attributes well. It cannot judge meaning. "Exterior" passes as alt text. Two prices for one fee pass as HTML. In this demo, four of ten findings get no scanner warning. Those belong to the content specialist.
- Known
- The WCAG 2.2 criteria and Google's title guidance, linked to the source.
- Observed
- The public structure of one ESA property page, listed under Sources.
- Proposed
- The severity rule, owners and verdict logic. ESA's team would set the real ones.
- Untested
- The dotCMS workflow, the accessibility platform in use, the app feed and real defect rates. I have no access to any of them.
Boundary. The preflight checks one change at a time. It misses defects in page templates every property shares, and it does not replace a full audit or testing with people who use assistive technology.
Evidence, with dates
- Job post
Extended Stay America, eCommerce Specialist, LinkedIn job 4481698659: dotCMS content, SEO with an agency, WCAG 2.2 compliance, UAT, JIRA and Trello. Read October 23, 2026.
- Observed
ESA Premier Suites Orlando - Sanford page: title "Premier Suites Orlando - Sanford | Extended Stay America", sections for Rooms, Amenities, Policies, FAQs and Nearby, a 12-item amenity list, and a 24-photo gallery with alt text such as "Exterior". Retrieved October 23, 2026. No defect on this page is claimed.
- Standard
W3C, Web Content Accessibility Guidelines 2.2, version dated December 12, 2024, and the linked Understanding page for each criterion. Retrieved October 23, 2026.
- Standard
Understanding 2.5.8 Target Size (Minimum): 24 by 24 CSS pixels, with spacing, equivalent, inline, user agent and essential exceptions. Retrieved October 23, 2026.
- Guidance
Google Search Central, title links: no fixed length limit, truncation by device width, avoid boilerplate and keyword stuffing. Retrieved October 23, 2026.
- Synthetic
Riverbend Demo Suites, its tickets, findings and QA results. Built for this demo. Not ESA data.
Who built this
I'm Mousa Batarseh. I have spent 7 years building and running online stores. At Universal Wholesale I ran two storefronts and a catalog of 14,000+ SKUs on WooCommerce and Shopify, including platform migrations I tested product by product and redirect by redirect before cutover. At Wild Bill's Tobacco I managed the wholesale site and built campaign pages with marketing. I run Smart Ecom Lab, where I build checking tools for e-commerce teams.
The gaps, stated plainly: I have not used dotCMS, and I have not run a formal WCAG audit for an employer. This page is how I learn a job: read the standard, build the check, show the work.
mousabatarseh.comLinkedInResume (PDF)Cover letter (PDF)Cutover Check
A proposed first 30 days
- Question
- Which content changes reach esa.com and the app with defects a scan or a guest finds later?
- Needs
- dotCMS access, the last three accessibility scan reports, and the release calendar.
- Deliverable
- A preflight checklist set to ESA's own severity rules, run on every content release for one month.
- Not included
- Template or code fixes. Those go to IT and dotCMS resources as documented tickets.
- How to judge it
- Fewer repeat items on the next scan, and zero fact conflicts on released pages.
Transparency. This is an independent case study made for a job application. Extended Stay America did not ask for it, review it or endorse it. The property, tickets and findings are synthetic. No ESA page is diagnosed here. The verdict rules are a proposal, and the workbook formulas match the demo logic.