PageSourceSearch

https://www.automateboring.ai/sortd

html automateboring.ai collected 2026-10-02 01:10:51 UTC 57,538 bytes, 85 lines download raw bytes

1<!DOCTYPE html><html lang="en" class="bg-ploy-background-primary text-ploy-text-primary leading-normal decoration-[rgb(13,27,42)] outline-[rgb(13,27,42)] antialiased dark" style="font-family:
2      __Sora_1a977f,
3      __Sora_Fallback_1a977f,
4      system-ui,
5      -apple-system,
6      sans-serif" data-theme="dark"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="icon" type="image/x-icon" href="/favicon.ico"><link rel="stylesheet" href="https://assets.calendly.com/assets/external/widget.css"><meta name="generator" content="Astro v6.1.9"><meta name="ploy-astro-starter-version" content="1.0.0"><title>Sortd | Amazon DSP operations software | </title><meta name="description" content="See your Amazon DSP scorecard, drivers and daily work in one place. Explore Sortd&#x27;s interactive product demos and book an operator-led walkthrough."/><meta name="robots" content="index, follow"/><link rel="canonical" href="https://www.automateboring.ai/sortd"/><meta property="og:type" content="website"/><meta property="og:title" content="Sortd | Amazon DSP operations software | "/><meta property="og:site_name" content=""/><meta property="og:description" content="See your Amazon DSP scorecard, drivers and daily work in one place. Explore Sortd&#x27;s interactive product demos and book an operator-led walkthrough."/><meta property="og:url" content="https://www.automateboring.ai/sortd"/><meta property="og:image" content="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/20acba0a-ai-generated-1782879872814.png"/><meta property="og:image:alt" content="Sortd dispatch command center running an Amazon DSP delivery station at dawn"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Sortd | Amazon DSP operations software | "/><meta name="twitter:description" content="See your Amazon DSP scorecard, drivers and daily work in one place. Explore Sortd&#x27;s interactive product demos and book an operator-led walkthrough."/><meta name="twitter:image" content="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/20acba0a-ai-generated-1782879872814.png"/>
6<script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"Organization","name":"","url":"https://www.automateboring.ai"},{"@type":"WebSite","name":"","url":"https://www.automateboring.ai"},{"@type":"WebPage","name":"Sortd | Amazon DSP operations software | ","description":"See your Amazon DSP scorecard, drivers and daily work in one place. Explore Sortd's interactive product demos and book an operator-led walkthrough.","url":"https://www.automateboring.ai/sortd","image":"https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/20acba0a-ai-generated-1782879872814.png"},{"@type":"SoftwareApplication","name":"Sortd","applicationCategory":"BusinessApplication","description":"Sortd is an operating system for Amazon DSP owners with scorecard, dispatch, scheduling, hiring, driver and payroll workflows.","url":"https://www.automateboring.ai/sortd"}]}</script>
6 <meta property="og:title" content="Sortd | Amazon DSP operations software"> <meta property="og:site_name" content="Automate Boring"> <link rel="stylesheet" href="/_ploy_static/_astro/zap.JwR2EfY6.css">
7<link rel="stylesheet" href="/_ploy_static/_astro/sortd@[email protected]">
8<style>.sortd-video-link{display:block;width:fit-content;margin-top:16px;padding:7px 0;border:0;border-bottom:1px solid #b5b0a8;border-radius:0;background:transparent;color:inherit;font:inherit;font-size:14px;font-weight:650;text-align:left;cursor:pointer}.sortd-video-link:hover{border-color:currentColor}.sortd-video-link:focus-visible,.sortd-video-dialog :is(a,button):focus-visible{outline:3px solid #f97316;outline-offset:3px}.sortd-video-dialog{width:min(800px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;margin:auto;padding:clamp(16px,2vw,24px);border:1px solid #e4e1df;border-radius:12px;background:#f9f8f3;color:#221f1b;box-shadow:0 30px 100px #00000040}.sortd-video-dialog::backdrop{background:#181614bf}.sortd-video-dialog__top{display:flex;align-items:start;justify-content:space-between;gap:24px;margin-bottom:20px}.sortd-video-dialog__top h2{font-size:clamp(22px,2.8vw,34px);font-weight:700;letter-spacing:-.03em;line-height:1.15}.sortd-video-dialog__top p{margin-top:6px;color:#6a645e;font-size:14px}.sortd-video-dialog__close{display:grid;place-items:center;flex:none;width:40px;height:40px;border:1px solid #e4e1df;border-radius:9px;background:#fff;color:#221f1b;cursor:pointer}.sortd-video-dialog__close:hover{background:#f0ede8}.sortd-video-dialog video{display:block;width:100%;aspect-ratio:16 / 9;background:#221f1b;border-radius:9px}.sortd-video-dialog__footer{display:flex;justify-content:flex-end;margin-top:20px}.sortd-video-dialog__footer .sortd-action{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:12px 24px;border-radius:9px;background:#f97316;color:#221f1b;font-weight:700;text-decoration:none}.sortd-video-dialog__footer .sortd-action:hover{background:#ea580c}@media(max-width:560px){.sortd-video-dialog__footer .sortd-action{width:100%}}
9</style>
9<script data-ploy-experiments="1" data-astro-rerun>window.__ployExperiments=[]</script>
9<script data-ploy-selections="1" data-astro-rerun>window.__ploySelections=[]</script>
9<script data-ploy-experiment-bridge="1" data-astro-rerun>window.__ployTracker="engine";(function(){
10  var EVENT="experiment.exposed";
11  function isArray(v){return Object.prototype.toString.call(v)==="[object Array]"}
12  function assignments(){
13    var raw=window.__ployExperiments;
14    return isArray(raw)?raw:[];
15  }
16  /* Legacy calls maybeExpose() in its own boot() and onNavigate(). Emitting
17     here too would double every visitor count on the sites that already work.
18     An unknown tracker emits: a duplicate exposure is dedupable after the
19     fact, a missing one is unrecoverable. */
20  function ownsExposure(){return window.__ployTracker!=="legacy"}
21  /* Hands the event to whatever window.ploy currently is, mirroring the stub's
22     own rules (CONTRACT section 3). A track method is honoured only alongside
23     a stub/engine marker: a customer object may carry its own unrelated track,
24     and handing Ploy's exposure to that function would lose it silently. */
25  /* The exposure event carries its own payload: the page-rendered assignment
26     globals, echoed back so analysis reads the exposure row alone. */
27  function payload(list){
28    var visitor=window.__ployExperimentVisitor;
29    return {experiments:list,experimentVisitorId:typeof visitor==="string"?visitor:""}
30  }
31  function deliver(props){
32    var ploy=window.ploy;
33    if(ploy&&typeof ploy.track==="function"&&(ploy.__loaded||ploy.SNIPPET_VERSION)){
34      ploy.track(EVENT,props);return true
35    }
36    /* No tracker yet — this script runs first by construction. The stub
37       preserves a pre-existing queue rather than reassigning it, and the
38       engine drains that queue BEFORE its boot page() call, which is what
39       puts the exposure ahead of page.viewed with no ordering hack.
40       ARRAY only, deliberately: the stub picks its queue with
41       Array.isArray(ploy) ? ploy : ploy.__ployq, so a site-owned object
42       carrying its own push would swallow the exposure into a structure
43       nothing drains, and report success doing it. */
44    if(isArray(ploy)){ploy.push(["track",EVENT,props]);return true}
45    /* A customer value we must not call .push on — side-queue it exactly
46       where the stub looks. Functions included: the stub reuses a
47       function-valued global too (CONTRACT section 3), so treating one as
48       absent here would clobber it before the stub ever sees it. */
49    if(ploy&&(typeof ploy==="object"||typeof ploy==="function")){
50      var q=ploy.__ployq=ploy.__ployq||[];
51      q.push(["track",EVENT,props]);return true
52    }
53    window.ploy=[];
54    window.ploy.push(["track",EVENT,props]);
55    return true
56  }
57  if(!ownsExposure())return;
58  var list=assignments();
59  /* No assignments means this page has no experiment and never will without a
60     fresh document — the globals are server-injected per request. Bail before
61     touching anything global: this script ships on EVERY page the engine
62     serves, and the overwhelming majority have no experiment on them. */
63  if(!list.length)return;
64  /* Once per boot, no dedupe machinery: the script re-runs on document
65     transitions and fires again, which analysis collapses per visitor. A
66     dropped exposure is unrecoverable; a duplicate is free. */
67  try{deliver(payload(list))}catch(e){}
68})();</script>
68<script data-ploy-analytics="1">(()=>{(function(){let u=window;if(u.__ployAnalyticsInstalled)return;u.__ployAnalyticsInstalled=!0;let v=u.ploy,b=v&&(typeof v==="object"||typeof v==="function")?v:u.ploy=[];if(b.__loaded)return;let E=Array.isArray(b)?b:b.__ployq=b.__ployq||[];b.SNIPPET_VERSION="1";let z=["track","identify","page","group","reset","ready","on","consent"];b.methods=z,b.factory=function(j){return function(...D){return D.unshift(j),E.push(D),b}};for(let j=0;j<z.length;j++)b[z[j]]=b.factory(z[j]);let C=u.__ployEngineSrc,A=document.createElement("script");A.async=!0,A.src=typeof C==="string"&&/^\/_p\/[0-9A-Za-z][0-9A-Za-z.-]*\.js$/.test(C)?C:"/_p/v1.js";let B=document.getElementsByTagName("script")[0];if(B&&B.parentNode)B.parentNode.insertBefore(A,B);else(document.head||document.documentElement).appendChild(A)})();})();</script>
68</head> <body class="bg-ploy-background-primary text-ploy-text-primary leading-normal decoration-[rgb(13,27,42)] min-h-screen m-0 antialiased" style="
69      font-family:
70        __Sora_1a977f,
71        __Sora_Fallback_1a977f,
72        system-ui,
73        -apple-system,
74        sans-serif;
75    ">   <style>astro-island,astro-slot,astro-static-slot{display:contents}</style>
75<script>(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event("astro:load"));})();</script>
75<script>(()=>{var A=Object.defineProperty;var C=(i,o,a)=>o in i?A(i,o,{enumerable:!0,configurable:!0,writable:!0,value:a}):i[o]=a;var l=(i,o,a)=>C(i,typeof o!="symbol"?o+"":o,a);var E=new Set(["__proto__","constructor","prototype"]);{let i={0:t=>y(t),1:t=>a(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(a(t)),5:t=>new Set(a(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t),11:t=>Number.POSITIVE_INFINITY*t},o=t=>{let[h,e]=t;return h in i?i[h](e):void 0},a=t=>t.map(o),y=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([h,e])=>[h,o(e)]));class f extends HTMLElement{constructor(){super(...arguments);l(this,"Component");l(this,"hydrator");l(this,"hydrate",async()=>{var b;if(!this.hydrator||!this.isConnected)return;let e=(b=this.parentElement)==null?void 0:b.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let c=this.querySelectorAll("astro-slot"),n={},p=this.querySelectorAll("template[data-astro-template]");for(let r of p){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute("data-astro-template")||"default"]=r.innerHTML,r.remove())}for(let r of c){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute("name")||"default"]=r.innerHTML)}let u;try{u=this.hasAttribute("props")?y(JSON.parse(this.getAttribute("props"))):{}}catch(r){let s=this.getAttribute("component-url")||"<unknown>",v=this.getAttribute("component-export");throw v&&(s+=` (export ${v})`),console.error(`[hydrate] Error parsing props for component ${s}`,this.getAttribute("props"),r),r}let d;await this.hydrator(this)(this.Component,u,n,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))});l(this,"unmount",()=>{this.isConnected||this.dispatchEvent(new CustomEvent("astro:unmount"))})}disconnectedCallback(){document.removeEventListener("astro:after-swap",this.unmount),document.addEventListener("astro:after-swap",this.unmount,{once:!0})}connectedCallback(){if(!this.hasAttribute("await-children")||document.readyState==="interactive"||document.readyState==="complete")this.childrenConnectedCallback();else{let e=()=>{document.removeEventListener("DOMContentLoaded",e),c.disconnect(),this.childrenConnectedCallback()},c=new MutationObserver(()=>{var n;((n=this.lastChild)==null?void 0:n.nodeType)===Node.COMMENT_NODE&&this.lastChild.nodeValue==="astro:end"&&(this.lastChild.remove(),e())});c.observe(this,{childList:!0}),document.addEventListener("DOMContentLoaded",e)}}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}async start(){let e=JSON.parse(this.getAttribute("opts")),c=this.getAttribute("client");if(Astro[c]===void 0){window.addEventListener(`astro:${c}`,()=>this.start(),{once:!0});return}try{await Astro[c](async()=>{let n=this.getAttribute("renderer-url"),[p,{default:u}]=await Promise.all([import(this.getAttribute("component-url")),n?import(n):()=>()=>{}]),d=this.getAttribute("component-export")||"default";if(d.includes(".")){this.Component=p;for(let m of d.split(".")){if(E.has(m)||!this.Component||typeof this.Component!="object"&&typeof this.Component!="function"||!Object.hasOwn(this.Component,m))throw new Error(`Invalid component export path: ${d}`);this.Component=this.Component[m]}}else{if(E.has(d))throw new Error(`Invalid component export path: ${d}`);this.Component=p[d]}return this.hydrator=u,this.hydrate},e,this)}catch(n){console.error("[astro-island] Error hydrating %s",this.getAttribute("component-url"),n)}}attributeChangedCallback(){this.hydrate()}}l(f,"observedAttributes",["props"]),customElements.get("astro-island")||customElements.define("astro-island",f)}})();</script>
75<astro-island uid="2oaqRQ" prefix="r2" component-url="/_ploy_static/_astro/sortd.CogQvS0w.js" component-export="default" renderer-url="/_ploy_static/_astro/client.CRr4o5nz.js" props="{}" ssr client="load" opts="{&quot;name&quot;:&quot;Page&quot;,&quot;value&quot;:true}" await-children><div class="sortd-shell"><header class="sticky top-0 z-50 border-b border-ploy-neutral-inverse/10 bg-ploy-background-primary/70 backdrop-blur"><nav class="mx-auto flex h-16 w-full max-w-[75rem] items-center justify-between px-[5%]"><div class="flex shrink-0 items-center gap-3"><a href="/sortd" aria-label="Sortd home" class="flex items-center gap-2 text-ploy-text-primary"><span class="inline-flex items-center gap-2.5"><span class="flex shrink-0 items-center justify-center bg-ploy-accent-primary" style="width:28px;height:28px;border-radius:8px"><svg width="17" height="17" viewBox="0 0 40 40" fill="none" role="img" aria-label="Sortd" class="shrink-0"><path d="M27.5 13.2C27.5 9 21 7.5 16.5 10.5C12 13.5 13 18 20 20C27 22 28 26.5 23.5 29.5C19 32.5 12.5 31 12.5 26.8" stroke="#171717" stroke-width="7" stroke-linecap="butt" stroke-linejoin="round"></path></svg></span><span class="font-extrabold leading-none tracking-[-0.025em] text-[#171717]" style="font-size:25.2px">Sortd<span class="text-ploy-accent-primary">.</span></span></span></a><a href="/" class="whitespace-nowrap border-l border-ploy-border-primary pl-3 text-xs font-medium text-ploy-text-primary/70 transition-colors hover:text-ploy-text-primary" aria-label="Back to Automate Boring home"><span class="hidden sm:inline">Automate Boring</span><span class="sm:hidden">Studio</span></a></div><div class="items-center gap-1 lg:flex max-lg:hidden"><div class="group relative"><a href="/products" class="flex items-center gap-1 whitespace-nowrap rounded-full px-3 py-1.5 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:text-ploy-text-primary">Products<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-3.5 w-3.5 transition-transform group-hover:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></a><div class="invisible absolute left-0 top-full z-50 min-w-[13rem] pt-2 opacity-0 transition-opacity group-hover:visible group-hover:opacity-100"><div class="overflow-hidden rounded-xl border border-ploy-neutral-inverse/10 bg-ploy-neutral-primary-s2 p-1.5 shadow-xl"><a href="/sortd" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">Sortd — DSP Operator OS</a><a href="/introvid" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">IntroVid — Video screening</a><a href="/mdm" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">Android MDM — In development</a></div></div></div><div class="group relative"><a href="/solutions" class="flex items-center gap-1 whitespace-nowrap rounded-full px-3 py-1.5 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:text-ploy-text-primary">Sortd Solutions<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-3.5 w-3.5 transition-transform group-hover:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></a><div class="invisible absolute left-0 top-full z-50 min-w-[13rem] pt-2 opacity-0 transition-opacity group-hover:visible group-hover:opacity-100"><div class="overflow-hidden rounded-xl border border-ploy-neutral-inverse/10 bg-ploy-neutral-primary-s2 p-1.5 shadow-xl"><a href="/solutions/hiring" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">Hiring &amp; Onboarding</a><a href="/solutions/scheduling" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">Scheduling</a><a href="/solutions/fleet" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">Fleet &amp; Device Ops</a><a href="/solutions/payroll" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">Payroll &amp; Time Compliance</a><a href="/solutions/dispatch" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">Live Dispatch &amp; Rescue</a><a href="/solutions/messaging" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">Communication Hub</a><a href="/solutions/performance" class="block whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:bg-ploy-neutral-inverse/10 hover:text-ploy-text-primary">People &amp; Performance</a></div></div></div><a href="/compare" class="block whitespace-nowrap rounded-full px-3 py-1.5 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:text-ploy-text-primary">Compare</a><a href="/pricing" class="block whitespace-nowrap rounded-full px-3 py-1.5 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:text-ploy-text-primary">Pricing</a></div><div class="flex items-center gap-2.5"><a href="https://sortd.automateboring.ai/login" class="whitespace-nowrap rounded-full px-3 py-1.5 text-sm font-medium text-ploy-text-primary/70 transition-colors hover:text-ploy-text-primary lg:block max-lg:hidden">Log in</a><a class="inline-flex items-center justify-center gap-2 rounded-full font-heading font-bold tracking-tight transition-colors duration-150 whitespace-nowrap bg-ploy-accent-primary text-ploy-text-on-accent-primary hover:bg-ploy-accent-primary-400 text-xs px-5 py-2.5 max-lg:hidden" href="https://calendly.com/automateboringai/30min">Book a Demo</a><button type="button" aria-label="Toggle menu" aria-expanded="false" class="ml-1 h-9 w-9 cursor-pointer items-center justify-center rounded-lg text-ploy-text-primary transition-colors hover:bg-ploy-neutral-inverse/10 lg:hidden max-lg:flex"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu h-5 w-5" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button></div></nav></header><main class="ink"><section class="sortd-intro" aria-labelledby="sortd-title"><div class="wrap"><div class="sortd-intro__copy"><h1 id="sortd-title">Sortd for Amazon DSPs.</h1><p class="sortd-intro__lead">The operating system for your station. See your scorecard, drivers, and daily work in one view, with the next action beside each issue.</p><div class="sortd-intro__actions"><a class="sortd-action" href="/demo">Book a demo</a><a class="sortd-text-link" href="#product">See the product</a><button type="button" class="sortd-text-link sortd-intro__video-link">Watch the 20-second overview</button></div><p class="sortd-intro__note">Built by a DSP operator. Illustrated with sample station data.</p></div><div class="sortd-intro__product" aria-label="Sortd Today view using illustrative station data"><div class="mock" aria-label="Sortd Today screen, sample station"><div class="top"><span class="station">WTH1 <span class="cap">Chico, CA</span></span><span class="crumb"><b>Today</b></span><span class="synced"><span class="dot ok"></span>Cortex synced 4 min ago</span></div><div class="mbody"><div class="ttl">Where the station stands</div><p class="scope">Mon, Sep 21 · 14:05 · 33 routes out · <b>W38</b> card lands Wed noon · <b>W39</b> projected below</p><div class="grid4"><div class="tile"><div class="tl">Projected</div><div class="tv">87.3</div><div class="ts">~ Fantastic · <span class="nw">85.1–89.6</span></div></div><div class="tile"><div class="tl">To Fantastic+</div><div class="tv">0.7<span class="unit">pts</span></div><div class="ts">~60 photos short · 41 on 2 drivers</div></div><div class="tile"><div class="tl">Disputes</div><div class="tv">57<span class="unit">ready</span></div><div class="ts">Amazon Sat 12:00<br/>1 Netradyne today</div></div><div class="tile"><div class="tl">Payroll flags</div><div class="tv">5<span class="unit">of 84</span></div><div class="ts">Sep 14–20 upload · meal, mobile</div></div></div><div class="card"><div class="cardhead"><span class="ct">Needs you</span><span class="sub">7 items · sorted by what’s at risk</span></div><div class="qrow"><span class="av">NR</span><span class="who mono">NR-0442</span><span class="why grow">Netradyne dispute · van 1203 · closes 17:40</span><span class="pill p-crit"><span class="d"></span><span class="pt">3h 35m</span></span><span class="btn">Review</span></div><div class="qrow"><span class="av">KN</span><span class="who">K. Nakoa</span><span class="why grow">Rolling stop · Netradyne · Sun 14:22</span><span class="pill p-warn"><span class="d"></span><span class="pt">Coach today</span></span><span class="btn">Open</span></div><div class="qrow"><span class="av">CX</span><span class="who">Route <span class="mono">CX127</span></span><span class="why grow">38 min behind · rescue suggested</span><span class="pill p-crit"><span class="d"></span><span class="pt">Rescue</span></span><span class="btn">Review</span></div><div class="qrow"><span class="av">MS</span><span class="who">M. Silva</span><span class="why grow">Lunch at 5h 12m · CA line is 5h</span><span class="pill p-warn"><span class="d"></span><span class="pt">Text by 5 pm</span></span><span class="btn">Text</span></div><div class="qrow more"><span class="why grow">+ 3 more: R. Torres photo coaching (74.8 vs 97, 2 wks) · 6 W37 driver cards unsent · PTO from J. Reyes</span></div></div></div></div></div></div></section><section class="sortd-workflow" id="product" aria-labelledby="product-title"><div class="wrap"><div class="sortd-workflow__head"><h2 id="product-title">Make the next call with the full picture.</h2><p>Explore a working sample. Choose a workflow to see what happens next.</p></div><div class="sortd-workflow__nav" role="tablist" aria-label="Make the next call with the full picture. workflows"><button id="product-tab-0" type="button" role="tab" aria-selected="true" aria-controls="product-panel">Scorecard</button><button id="product-tab-1" type="button" role="tab" aria-selected="false" aria-controls="product-panel">Disputes</button><button id="product-tab-2" type="button" role="tab" aria-selected="false" aria-controls="product-panel">Payroll</button></div><div id="product-panel" class="sortd-workflow__panel" role="tabpanel" aria-labelledby="product-tab-0"><div class="sortd-workflow__copy"><h3>Know which drivers move the score.</h3><p>Switch between POD, customer feedback, delivery success and contact. See the metric and the next action together.</p><a class="sortd-text-link" href="/demo">See it on your station</a><span class="sortd-workflow__sample">Illustrative station data. Demo controls do not send messages or change live settings.</span></div><div class="sortd-workflow__illustration"><div class="mock loop" aria-label="Sortd Scorecard outlook, sample station"><div class="top"><span class="station">WTH1 <span class="cap">Chico, CA</span></span><span class="crumb">Scorecard · <b>Outlook</b></span><span class="synced"><span class="dot ok"></span>Recomputed 14:02</span></div><div class="mbody"><div class="grid2" style="align-items:start"><div><div class="lbl">Projected · W39 · day 1 of 7</div><div class="big"><span class="tilde">~</span>87.3<span class="unit">Fantastic</span></div><div class="budget"><span class="spent" style="width:49%"></span><span class="mark" style="left:64%"></span><span class="markl" style="left:64%">Fantastic+ 88</span></div><div class="budgetcap"><span>85.1</span><span>range</span><span>89.6</span></div></div><div class="kv" style="align-self:end"><dt>Publishes</dt><dd>Wed Sep 30, noon PT</dd><dt>Last week</dt><dd>W38 · frozen Sun 23:59 · ~88.1 (86.9–89.4) · lands Wed noon</dd><dt>History</dt><dd>W25–W37 · 5,000 simulations</dd><dt>Back-test</dt><dd>inside range 11 of 13 weeks · median miss 0.9 pts</dd></div></div><svg class="chart" viewBox="0 0 600 96" preserveAspectRatio="none" aria-hidden="true"><line x1="0" y1="26" x2="600" y2="26" stroke="#0B9E53" stroke-dasharray="3 3" stroke-width="1"></line><text x="4" y="22" font-size="11" fill="#185D22">Fantastic+ 88</text><polygon points="12,66 52,58 92,62 132,50 172,52 212,46 252,54 292,42 332,44 372,39 412,48 452,40 492,44 532,35 572,49 572,13 532,15 492,26 452,22 412,30 372,21 332,26 292,24 252,36 212,28 172,34 132,32 92,44 52,40 12,48" fill="#E8F8EC"></polygon><polyline points="12,57 52,49 92,53 132,41 172,43 212,37 252,45 292,33 332,35 372,30 412,39 452,31 492,35" fill="none" stroke="#B5B0A8" stroke-width="1" stroke-dasharray="2 3"></polyline><polyline class="line" points="12,55 52,50 92,52 132,44 172,42 212,38 252,60 292,34 332,40 372,18 412,38 452,32 492,34" fill="none" stroke="#221F1B" stroke-width="1.6"></polyline><polyline class="proj" points="492,34 532,25 572,32" fill="none" stroke="#221F1B" stroke-width="1.6" stroke-dasharray="4 3"></polyline><circle cx="12" cy="55" r="2.5" fill="#221F1B"></circle><circle cx="52" cy="50" r="2.5" fill="#221F1B"></circle><circle cx="92" cy="52" r="2.5" fill="#221F1B"></circle><circle cx="132" cy="44" r="2.5" fill="#221F1B"></circle><circle cx="172" cy="42" r="2.5" fill="#221F1B"></circle><circle cx="212" cy="38" r="2.5" fill="#221F1B"></circle><circle cx="292" cy="34" r="2.5" fill="#221F1B"></circle><circle cx="332" cy="40" r="2.5" fill="#221F1B"></circle><circle cx="412" cy="38" r="2.5" fill="#221F1B"></circle><circle cx="452" cy="32" r="2.5" fill="#221F1B"></circle><circle cx="492" cy="34" r="2.5" fill="#221F1B"></circle><circle cx="252" cy="60" r="5.5" fill="none" stroke="#221F1B" stroke-width="1.5"></circle><circle cx="252" cy="60" r="2.5" fill="#221F1B"></circle><circle cx="372" cy="18" r="5.5" fill="none" stroke="#221F1B" stroke-width="1.5"></circle><circle cx="372" cy="18" r="2.5" fill="#221F1B"></circle><circle cx="532" cy="25" r="3" fill="#F9F8F3" stroke="#221F1B" stroke-width="1.6"></circle><circle cx="572" cy="32" r="3" fill="#F9F8F3" stroke="#221F1B" stroke-width="1.4" stroke-dasharray="2 1.5"></circle><text x="12" y="83" font-size="11" fill="#6A645E">W25</text><text x="252" y="83" text-anchor="middle" font-size="11" fill="#6A645E">W31 low</text><text x="372" y="83" text-anchor="middle" font-size="11" fill="#6A645E">W34 high</text><text x="588" y="83" text-anchor="end" font-size="11" fill="#6A645E">W38 · ~W39</text></svg><div class="metric-tabs" aria-label="Scorecard metrics"><button type="button" aria-pressed="true">POD</button><button type="button" aria-pressed="false">CDF</button><button type="button" aria-pressed="false">DSB</button><button type="button" aria-pressed="false">Contact</button></div><div class="metric-focus"><div><span class="lbl">Photo on delivery</span><div class="metric-value">97.4%</div><span class="pill p-warn"><span class="d"></span><span class="pt">Drifting · ~60 photos</span></span></div><div class="drivers"><span class="lbl">Who is driving it</span><p>R. Torres · 26 missing photos, repeat flag. S. Iyer · 15, first-week dip. 19 across the rest of the team.</p><b>Coach R. Torres today</b></div></div><div class="loop-controls"><span>Metric 1 / 4 · illustrative data</span></div></div></div></div></div></div></section><section class="sortd-workfl
75ow" id="shift" aria-labelledby="shift-title"><div class="wrap"><div class="sortd-workflow__head"><h2 id="shift-title">Run the shift without chasing tabs.</h2><p>Explore a working sample. Choose a workflow to see what happens next.</p></div><div class="sortd-workflow__nav" role="tablist" aria-label="Run the shift without chasing tabs. workflows"><button id="shift-tab-0" type="button" role="tab" aria-selected="true" aria-controls="shift-panel">Dispatch</button><button id="shift-tab-1" type="button" role="tab" aria-selected="false" aria-controls="shift-panel">Scheduling</button><button id="shift-tab-2" type="button" role="tab" aria-selected="false" aria-controls="shift-panel">Driver app</button></div><div id="shift-panel" class="sortd-workflow__panel" role="tabpanel" aria-labelledby="shift-tab-0"><div class="sortd-workflow__copy"><h3>See the route that needs help.</h3><p>Spot a delay, inspect the driver and open the message. Rescue planning stays separate from contacting the driver.</p><a class="sortd-text-link" href="/demo">See it on your station</a><button type="button" class="sortd-video-link">Watch rescue walkthrough</button><dialog class="sortd-video-dialog" aria-labelledby="_r2R_hq9_"><div class="sortd-video-dialog__top"><div><h2 id="_r2R_hq9_">Rescue planning in Sortd</h2><p>Narrated product walkthrough with station data.</p></div><button type="button" class="sortd-video-dialog__close" aria-label="Close video"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><video controls="" playsInline="" preload="none" poster="/images/sortd-video/rescue.webp" aria-label="Rescue planning in Sortd, narrated product walkthrough"><source src="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/f88ed035-sortd-rescue-endcard-removed.mp4" type="video/mp4"/><track src="/captions/sortd-rescue.vtt" kind="captions" srcLang="en" label="English" default=""/>Your browser does not support video playback.</video><div class="sortd-video-dialog__footer"><a class="sortd-action" href="/demo">Book a demo</a></div></dialog><span class="sortd-workflow__sample">Illustrative station data. Demo controls do not send messages or change live settings.</span></div><div class="sortd-workflow__illustration"><div class="sortd-workflow__stack"><div class="mock loop dmap s1" aria-label="Sortd Dispatch map, sample station"><div class="loop-controls"><span>Route → message → receipt</span></div><div class="top"><span class="station">WTH1 <span class="cap">Chico, CA</span></span><span class="crumb">Dispatch · <b>Map</b> · 14:05</span><span class="synced"><span class="dot ok"></span>Execution 2 min ago · 33 routes</span></div><div class="mbody"><div class="capture-note">Illustrative preview · narrated rescue recording available</div><div class="grid2 dgrid"><div class="routes"><div class="lbl">Routes · 33 out · 2 behind</div><div class="qrow on"><span class="who mono">CX127</span><span class="why grow">K. Nakoa · 61/160</span><span class="pill p-crit"><span class="d"></span><span class="pt">Behind 38 min</span></span></div><div class="qrow"><span class="who mono">CX131</span><span class="why grow">T. Barnes · 72/148</span><span class="pill p-warn"><span class="d"></span><span class="pt">Behind 11 min</span></span></div><div class="qrow"><span class="who mono">CX118</span><span class="why grow">L. Pham · 91/152</span><span class="pill p-ok"><span class="d"></span><span class="pt">On pace</span></span></div><div class="qrow more"><span class="why grow">+ 30 more on pace · 1 finished · tap a route</span></div></div><div class="map big-map"><svg class="trace" viewBox="0 0 600 200" preserveAspectRatio="none" aria-hidden="true"><g stroke="#DAD6D1" stroke-width="1" fill="none"><polyline points="0,60 600,52"></polyline><polyline points="0,118 600,110"></polyline><polyline points="0,168 600,160"></polyline><polyline points="90,0 100,200"></polyline><polyline points="200,0 208,200"></polyline><polyline points="330,0 336,200"></polyline><polyline points="455,0 462,200"></polyline><polyline points="540,0 548,200"></polyline></g><polyline points="40,175 120,150 230,132" fill="none" stroke="#E94743" stroke-width="2"></polyline><polyline points="230,132 300,100 400,85 480,50 560,30" fill="none" stroke="#E94743" stroke-width="1.5" stroke-dasharray="4 3" opacity=".55"></polyline></svg><span class="pin sel" style="left:38%;top:66%;background:#E94743"></span><span class="lbl" style="left:31%;top:78%">CX127 · stop 61</span><span class="pin" style="left:20%;top:15%;background:#0B9E53"></span><span class="lbl" style="left:8px;top:8px">
75CX118 · L. Pham</span><span class="pin" style="left:72%;top:30%;background:#9B7000"></span><span class="lbl" style="left:64%;top:12%">CX131 · T. Barnes</span><div class="sidep"><div class="sh"><b>K. Nakoa</b> · CX127 · van 1187<span class="grow"></span><span class="pill p-crit"><span class="d"></span><span class="pt">Behind 38 min</span></span></div><div class="sm">Stop 61 of 160 · due 68 · last scan 14:03 · RTS 18:30</div><div class="acts"><span class="btn primary">Message</span><span class="btn">Call</span><span class="btn">Rescue</span></div></div></div></div><p class="evline">Live positions every 5 min · tap a route for Message, Call, Rescue · the text lands on the driver’s record</p></div></div><div class="mock rescue-card" aria-label="Sortd rescue suggestion, sample station"><div class="top"><span class="station">WTH1 <span class="cap">Chico, CA</span></span><span class="crumb">Rescue · <b>CX127</b></span><span class="synced"><span class="dot ok"></span>Suggested 14:04 · not yet approved</span></div><div class="mbody"><div class="cardhead" style="margin-bottom:6px"><span class="ct">L. Pham takes 8 stops</span><span class="grow"></span><span class="sub">saves ~44 min</span></div><p style="font-size:12.5px;line-height:1.5;margin:0">5 apartments at one Frazier Ln address · meets K. Nakoa at stop 122, 3.1 mi away · Pham finishes ~45 min later, still before RTS · both drivers get the stop list by text on approve.</p></div><div class="foot"><span class="btn primary">Approve rescue</span><span class="btn">Edit stops</span><span class="evline" style="margin:0">Grouped by building · picked by residual capacity</span></div></div></div></div></div></div></section><section class="sortd-workflow sortd-workflow--hiring" id="hiring" aria-labelledby="sortd-hiring-title"><div class="wrap"><div class="sortd-workflow__head"><h2 id="sortd-hiring-title">Keep hiring moving.</h2><p>Import candidates, skip duplicates, review an interview and build a shortlist in one flow.</p></div><div class="sortd-workflow__panel"><div class="sortd-workflow__copy"><h3>From lead to shortlist.</h3><p>Follow the stages in the demo. The interview uses labeled stock footage, not a real applicant recording.</p><a class="sortd-text-link" href="/solutions/hiring">Explore hiring</a><button type="button" class="sortd-video-link">Watch hiring walkthrough</button><dialog class="sortd-video-dialog" aria-labelledby="_r2R_hip_"><div class="sortd-video-dialog__top"><div><h2 id="_r2R_hip_">Hiring in Sortd</h2><p>Narrated product walkthrough with candidate data.</p></div><button type="button" class="sortd-video-dialog__close" aria-label="Close video"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><video controls="" playsInline="" preload="none" poster="/images/sortd-video/hiring.webp" aria-label="Hiring in Sortd, narrated product walkthrough"><source src="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/9c05e591-sortd-hiring-endcard-removed.mp4" type="video/mp4"/><track src="/captions/sortd-hiring.vtt" kind="captions" srcLang="en" label="English" default=""/>Your browser does not support video playback.</video><div class="sortd-video-dialog__footer"><a class="sortd-action" href="/demo">Book a demo</a></div></dialog></div><div class="sortd-workflow__illustration"><div class="mock loop hire s2" aria-label="Sortd Hiring pipeline, sample station"><div class="loop-controls"><span>Import → review → interview</span></div><div class="top"><span class="station">WTH1 <span class="cap">Chico, CA</span></span><span class="crumb">Hiring · <b>Pipeline</b></span><span class="synced"><span class="dot ok"></span>Indeed import · 38 new leads</span></div><div class="mbody"><div class="tabs" aria-label="Hiring stages"><button type="button" aria-pressed="false" class="tab">New leads<span class="tct">38</span></button><button type="button" aria-pressed="false" class="tab">Awaiting<span class="tct">12</span></button><button type="button" aria-pressed="true" class="tab on">Review<span class="tct hot">5</span></button><button type="button" aria-pressed="false" class="tab">Preselected<span class="tct">9</span></button></div><div class="qrow" style="border-bottom:0;padding-top:0"><span class="av">SO</span><span class="who">Sam O.</span><span class="why grow">Video received · ready to review</span><span class="fact">1 of 5</span></div><div class="candidate-video"><video src="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/3e7557d1-candidate-demo.mp4" poster="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/84b70871-candidate-demo.webp" muted="" loop="" playsInl
75ine="" preload="none" aria-label="Demo candidate speaking in a video interview, stock footage"></video><span class="video-demo-label">Demo footage</span><button type="button" class="video-play" aria-label="Play candidate video"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="m8 4 12 8-12 8Z" fill="currentColor"></path></svg></button><span class="video-question">Q2 · Tell us about a challenging day</span></div><div class="vq"><span class="fact">Q1 · Your driving record</span><span class="fact on">Q2 · A route that went wrong</span><span class="fact">Q3 · Availability</span></div><details class="interview-transcript"><summary>Example transcript · Q2</summary><p>“When the route changed, I called dispatch and worked out a new plan.”</p><small>Illustrative text; not a transcript of the stock footage.</small></details><div class="acts" style="margin-top:8px"><button type="button" class="btn primary">Preselect</button><button type="button" class="btn">Next candidate</button></div></div></div></div></div></div></section><section class="sortd-team" id="team" aria-labelledby="sortd-team-title"><div class="wrap"><div class="sortd-workflow__head"><h2 id="sortd-team-title">Keep your team moving.</h2><p>One place for the updates, incidents and follow-through that happen between routes.</p></div><div class="ops-showcase"><div class="ops-copy"><div class="ops-tabs" aria-label="People and operations demos"><button type="button" aria-pressed="true">Messaging<span aria-hidden="true">↗</span></button><button type="button" aria-pressed="false">Extra Care<span aria-hidden="true">↗</span></button><button type="button" aria-pressed="false">Incidents<span aria-hidden="true">↗</span></button><button type="button" aria-pressed="false">Writeups<span aria-hidden="true">↗</span></button></div><h3 class="h3">Keep the conversation with the work.</h3><p class="body">Message drivers and keep the context in one place.</p><div class="loop-controls"><span>Explore the workflow</span></div><button type="button" class="sortd-video-link">Watch inbox walkthrough</button><dialog class="sortd-video-dialog" aria-labelledby="_r2R_lj9_"><div class="sortd-video-dialog__top"><div><h2 id="_r2R_lj9_">Messages in Sortd</h2><p>Narrated product walkthrough with team conversations.</p></div><button type="button" class="sortd-video-dialog__close" aria-label="Close video"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><video controls="" playsInline="" preload="none" poster="/images/sortd-video/inbox.webp" aria-label="Messages in Sortd, narrated product walkthrough"><source src="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/6952456e-sortd-inbox-endcard-removed.mp4" type="video/mp4"/><track src="/captions/sortd-inbox.vtt" kind="captions" srcLang="en" label="English" default=""/>Your browser does not support video playback.</video><div class="sortd-video-dialog__footer"><a class="sortd-action" href="/demo">Book a demo</a></div></dialog></div><div class="ops-screen"><div class="mock" aria-label="Sortd Messages inbox, sample station"><div class="top"><span class="station">WTH1 <span class="cap">Chico, CA</span></span><span class="crumb">Messages · <b>Inbox</b> · 2 unread</span><span class="synced"><span class="dot ok"></span>Registered business number · 41 threads</span></div><div class="mbody"><div class="grid2 inbox"><div class="threads"><div class="qrow on"><span class="av">TB</span><span class="who">T. Barnes</span><span class="why grow">Got it</span><span class="fact">09:14</span></div><div class="qrow"><span class="av">RT</span><span class="who">R. Torres</span><span class="why grow">On it, double-checking photos today</span><span class="tct hot">1</span><span class="fact">08:52</span></div><div class="qrow"><span class="av">MS</span><span class="who">M. Silva</span><span class="why grow">Lunch flag · draft</span><span class="pill p-info"><span class="d"></span><span class="pt">Scheduled 4:45 pm</span></span></div><div class="qrow"><span class="av">DB</span><span class="who">Daily Briefing</span><span class="why grow">Announcement · read by 31 of 33</span><span class="fact">06:30</span></div><div class="qrow more"><span class="why grow">4 of 41 threads · sorted by last message</span></div></div><div class="thread"><div class="lbl">T. Barnes · CX131 · consent on file</div><div class="bub out">Kit sheet for today: van 1204 · keys 17 · pouch B · fuel card 08. Reply if anything is missing.<span class="ts">09:12 · delivered</span></div><div class="bub in">Got it<span class="ts">
7509:14</span></div><div class="bub out">Extra Care: 118 Vallombrosa Ave has 2 complaints this month. Briefing is in your app.<span class="ts">09:32 · delivered · briefing opened 09:34</span></div></div></div></div><div class="foot"><span class="btn primary">Reply</span><span class="btn">Schedule</span><span class="evline" style="margin:0">Quiet hours 9 pm–8 am · STOP honored · every send logged</span></div></div></div></div></div></section><section class="sortd-workflow sortd-workflow--ai" id="ask" aria-labelledby="sortd-ai-title"><div class="wrap"><div class="sortd-workflow__head"><h2 id="sortd-ai-title">Ask what needs attention.</h2><p>Sortd AI is in pilot. Explore five sample questions across your scorecard, payroll, disputes, dispatch and safety.</p></div><div class="sortd-workflow__panel"><div class="sortd-workflow__copy"><h3>Answers grounded in station data.</h3><p>These are illustrated examples, not live AI responses.</p><button type="button" class="sortd-video-link">Watch AI pilot walkthrough</button><dialog class="sortd-video-dialog" aria-labelledby="_r2R_djp_"><div class="sortd-video-dialog__top"><div><h2 id="_r2R_djp_">Sortd AI pilot</h2><p>Pilot walkthrough. Availability and answers may change.</p></div><button type="button" class="sortd-video-dialog__close" aria-label="Close video"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><video controls="" playsInline="" preload="none" poster="/images/sortd-video/sortd-ai.webp" aria-label="Sortd AI pilot, narrated product walkthrough"><source src="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/f4bf8374-sortd-sortd-ai-endcard-removed.mp4" type="video/mp4"/><track src="/captions/sortd-sortd-ai.vtt" kind="captions" srcLang="en" label="English" default=""/>Your browser does not support video playback.</video><div class="sortd-video-dialog__footer"><a class="sortd-action" href="/demo">Book a demo</a></div></dialog></div><div class="sortd-workflow__illustration"><div class="mock ask loop" aria-label="Sortd AI, sample station, pilot"><div class="loop-controls"><span>Question 1 / 5</span></div><div class="top"><span class="station">WTH1 <span class="cap">Chico, CA</span></span><span class="crumb">Sortd AI · <b>pilot</b></span><span class="synced"><span class="dot ok"></span>Read-only · illustrative answers</span></div><div class="mbody"><div class="askq" aria-live="off"><span class="askp">Sortd AI</span><span class="askt">Who is pulling our photo score down?</span><span class="btn primary sm sent">Ask</span></div><div class="askr s6"><div class="askread"><span class="dot ok"></span>Driver performance · scorecard flags</div><p class="askans">Two drivers account for 41 of roughly 60 missing photos. Start with the repeat flag, then check the first-week dip.</p><div class="askcard tile"><span class="ttl">Photo on delivery</span><div class="askbig"><span class="tv warn">97.4<span class="unit">%</span></span><span class="askvs">98.5% watch line · sample outlook</span></div><div class="askbars" aria-hidden="true"><span class="bar b-warn"><i style="width:97.4%"></i><b class="tick" style="left:98.5%"></b></span><span class="cnt">5,200 stops today</span></div></div><div class="askmovers"><div class="qrow"><span class="av">RT</span><span class="who">R. Torres</span><span class="why grow">26 photos short · 2 weeks running</span><span class="pill p-crit"><span class="d"></span><span class="pt">Coach</span></span></div><div class="qrow"><span class="av">SI</span><span class="who">S. Iyer</span><span class="why grow">15 photos short · first week</span><span class="pill p-warn"><span class="d"></span><span class="pt">Watch</span></span></div></div><div class="askacts"><span class="fact">Next: <!-- -->Review driver scorecards · Check the source</span></div></div></div><div class="foot"><span class="evline" style="margin:0">Illustrative answers · read-only pilot</span><span class="grow"></span><div class="ai-topics" aria-label="AI example questions"><button type="button" title="Who is pulling our photo score down?" aria-label="Who is pulling our photo score down?" aria-pressed="true">Scorecard</button><button type="button" title="What needs attention before payroll?" aria-label="What needs attention before payroll?" aria-pressed="false">Payroll</button><button type="button" title="Which disputes need my attention?" aria-label="Which disputes need my attention?" aria-pressed="false">Disputes</button><button type="button" title="Where does dispatch need to look now?" aria-label="Where does dispatch need to look now?" aria-pressed="false">Dispatch</button><button type="button" title="Who needs safety coaching?" aria-label="Who needs safety coaching?" aria-pressed="false">Safety</button></div></div></div></div></div></div></section><section class="sortd-trust" id="trust" aria-labelledby="sortd-trust-title"><div class="wrap"><div class="sortd-trust__heading"><h2 id="sortd-trust-title">Built at a DSP. Used by DSP operators.</h2><p>Sortd brings station decisions into one view, while leaving the final call with your team.</p></div><figure class="sortd-trust__quote"><blockquote>
75“Sortd runs our compliance and scheduling, and Sortd Device Management keeps our company-owned driver phones locked to work apps. Onboarding a new device is a QR scan.”</blockquote><figcaption>PonoPath · Amazon DSP</figcaption></figure><div class="sortd-trust__details"><div><strong>Your access</strong><p>Connect through your browser or a dedicated Sortd login.</p></div><div><strong>Your approval</strong><p>Review disputes one by one, or choose eligible auto-filing. You can turn it off.</p></div><div><strong>Your next step</strong><p>See the workflows on a guided demo. <a href="/pricing">View pricing</a> before you book.</p></div></div></div></section><section class="sortd-close" aria-labelledby="sortd-close-title"><div class="wrap"><h2 id="sortd-close-title">See your next shift in Sortd.</h2><p>Walk through the scorecard, daily work and driver experience with the team that built it.</p><a href="/demo" class="sortd-action">Book a demo</a></div></section></main><dialog class="sortd-video-dialog" aria-labelledby="sortd-video-title"><div class="sortd-video-dialog__top"><div><h2 id="sortd-video-title">Sortd in 20 seconds</h2><p>Product walkthrough with illustrative station data.</p></div><button type="button" class="sortd-video-dialog__close" aria-label="Close video"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><video controls="" playsInline="" preload="none" poster="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/24c258d4-sortd-overview-20s-poster.webp" aria-label="Sortd overview, a narrated product walkthrough"><source src="https://cdn.ploy.ai/9fadbc19-1d0b-4303-b2fb-a5f7b2449646/user/15310307-sortd-overview-20s-clean.mp4" type="video/mp4"/><track src="/captions/sortd-overview.vtt" kind="captions" srcLang="en" label="English" default=""/>Your browser does not support video playback.</video><div class="sortd-video-dialog__footer"><a class="sortd-action" href="/demo">Book a demo</a></div></dialog></div><footer class="border-t border-ploy-neutral-inverse/10 bg-ploy-neutral-primary-s0 text-ploy-text-primary"><div class="mx-auto max-w-[75rem] px-[5%] pb-8 pt-14"><div class="grid grid-cols-2 gap-8 md:grid-cols-[2fr_1fr_1fr_1fr]"><div class="col-span-2 md:col-span-1"><a href="/" class="flex items-center gap-2 text-ploy-text-primary"><div class="flex h-7 w-7 items-center justify-center rounded-lg bg-ploy-accent-primary text-ploy-text-on-accent-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" stroke="currentColor" stroke-width="0" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zap h-3.5 w-3.5" aria-hidden="true"><path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"></path></svg></div><span class="text-sm font-extrabold">automate<span class="text-ploy-accent-primary">boring</span>.ai</span></a><p class="mt-4 max-w-xs text-xs leading-relaxed text-ploy-text-primary/50">A product studio building operational software that automates the boring — starting with Sortd, the operating system for Amazon DSP stations.</p><a href="mailto:[email protected]" class="mt-4 block text-xs text-ploy-text-primary/50 hover:text-ploy-accent-primary">[email protected]</a><p class="mt-4 text-xs uppercase tracking-wider text-ploy-text-primary/40">Automate Boring · Deliverimates LLC 2026</p></div><div><h4 class="text-xs font-bold uppercase tracking-[0.08em] text-ploy-text-primary/40">Products</h4><ul class="mt-3.5 flex list-none flex-col gap-2.5 p-0"><li><a href="/products" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">All products</a></li><li><a href="/sortd" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Sortd</a></li><li><a href="/introvid" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">IntroVid</a></li><li><a href="/mdm" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Android MDM</a></li></ul></div><div><h4 class="text-xs font-bold uppercase tracking-[0.08em] text-ploy-text-primary/40">Solutions</h4><ul class="mt-3.5 flex list-none flex-col gap-2.5 p-0"><li><a href="/solutions/hiring" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Hiring &amp; Onboarding</a></li><li><a href="/solutions/scheduling" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Scheduling</a></li><li><a href="/solutions/fleet" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Fleet &amp; Devices</a></li><li><a href="/solutions/payroll" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Payroll &amp; Compliance</a></li><li><a href="/solutions/dispatch" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Live Dispatch &amp; Rescue</a></li><li><a href="/solutions/messaging" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Communication Hub</a></li><li><a href="/solutions/performance" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">People &amp; Performance</a></li></ul></div><div><h4 class="text-xs font-bold uppercase tracking-[0.08em] text-ploy-text-primary/40">Company</h4><ul class="mt-3.5 flex list-none flex-col gap-2.5 p-0"><li><a href="/pricing" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Pricing</a></li><li><a href="/privacy" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Privacy Policy</a></li><li><a href="/device-notice" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Device Notice</a></li><li><a href="/extension-privacy" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Extension Privacy</a></li><li><a href="mailto:[email protected]" class="text-sm text-ploy-text-primary/55 transition-colors hover:text-ploy-accent-primary">Contact</a></li></ul></div></div><div class="mt-10 flex flex-wrap items-center justify-between gap-4 border-t border-ploy-neutral-inverse/10 pt-6 text-xs text-ploy-text-primary/40"><span>© 2026 AutomateBoring.ai. All rights reserved.</span><span>Built by a DSP operator, for DSP operators.</span></div></div></footer><!--astro:end--></astro-island>  <!-- Calendly popup: open scheduling links in an on-site overlay --> 
75<script async src="https://assets.calendly.com/assets/external/widget.js"></script>
75 
75<script>
76      document.addEventListener("click", function (e) {
77        const link =
78          e.target.closest && e.target.closest('a[href*="calendly.com"]');
79        if (!link) return;
80        if (window.Calendly && typeof window.Calendly.initPopupWidget === "function") {
81          e.preventDefault();
82          window.Calendly.initPopupWidget({ url: link.href });
83        }
84      });
85    </script>
85 </body> </html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.