Page Preflight

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.

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

Title tagRiverbend Demo Suites Lakeside Extended Stay Hotel with Kitchen, Free Wi-Fi…F6
GalleryExterior, Exterior, IMG_4471.jpg, (empty)F2
Gallery labelsTwo different scenes, both called "Exterior"F3
PromoStay 7+ nights, save 20%F4 F5
Amenities12 amenities, under an H4 headingF7
App feed11 amenities in the appF10
Pet policyPet fee: $150 per stay
FAQPets are welcome for $25 per night.F1
NearbyClick here, Click here, Click hereF8
BookingCheck-out field hidden under the sticky barF9

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.

Title tag

H1

Premier Suites Riverbend - Lakeside

Gallery
    H2 Amenities & Services

    Website: 12 amenities.

    Pet policy

    Pet fee:

    FAQ

    Nearby
    Booking

    Check-in, Check-out, Guests

    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.

    HoldPatchShip

      The judgment call behind the rule

      Releases run on a schedule, sometimes late at night. Holding everything for every issue stalls the content calendar. Shipping everything sends known defects to guests and into the next scan.

      Fix every finding first

      Upside: clean pages.

      Downside: one alt text holds up a pricing update.

      Ship all, fix after the scan

      Upside: the calendar stays on time.

      Downside: guests see wrong fees, and legal sees repeat items.

      Hold by severity, per ticket Chosen

      Upside: blockers stop, the rest ships.

      Downside: it needs agreed severity rules and an owner per item.

      What would change my mind: if ESA's legal team makes every AA failure release-blocking, Major becomes Blocker. The workbook has one cell for that switch.

      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

        1. 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.
        2. 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.
        3. 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.

        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.
        hireme@mousabatarseh.com

        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.