We did not start with the Bill of Rights. We started with a list of complaints. About 18 months of complaints, pulled from r/Dentistry threads, BBB filings, dental podcast Q&As, agency-comparison blogs, and a few hundred conversations with dentists who had been chewed up by their last marketing vendor. Every entry on that list was a specific harm someone had done to someone’s practice. We coded them, ranked them by frequency, and asked a simple question: how could a contract be written so none of these things were ever possible?

The answer is the Bill of Rights. Ten clauses, each one designed to make a specific common harm contractually impossible. Every Thorli engagement includes it as a binding rider. Below is the full text, plus the pattern each clause is responding to and the test you can use on any agency — us included.

Why this exists at all

The dental marketing industry has a documented churn cliff at month five and a 12-month standard contract designed precisely to keep clients trapped past that cliff. It has agencies that hold domains and GBPs hostage on departure. It has $1,000/month “bundles” where roughly $200 actually reaches the ad platform. It has AI-generated blog content shipped under dentists’ names without their knowledge. It has reporting built around impressions and rankings for keywords no one searches.

None of this is hidden. All of it is documented. And every single Thorli clause exists because we read the documentation and decided we would rather build a smaller business that did the opposite than a bigger one that did the same thing.

The ten promises

1. Pricing on the site, not behind a sales call.

The pattern: Roughly 70 percent of dental agencies hide pricing. Dentists routinely report being quoted dramatically different prices for the same service from the same agency at different times. The opacity is structural — it lets the agency price discriminate against practices it perceives as “able to pay more.”

The promise: Every Thorli plan price is published on our website and matched in every contract. There is no negotiated price, no different price for different practices, no discount you have to ask for. The number on the pricing page is the number on the invoice.

2. Month-to-month. 30 days’ notice. No penalties, no auto-renewal traps.

The pattern: Twelve and twenty-four-month contracts with liquidated damages clauses, 90-day-prior cancellation requirements, and automatic renewal into another full term unless the dentist remembers to send a registered letter exactly during the cancellation window.

The promise: Every engagement is month-to-month. Thirty days’ written notice from either side ends it. No early-termination fee. No auto-renewal — the contract simply continues from month to month until somebody ends it.

3. You own everything — domain, website, GBP, ad accounts, GA4, all of it.

The pattern: Agencies registering domains in their own name. Proprietary CMS platforms that cannot be exported. Google Business Profile ownership in the agency’s email. Ad accounts in the agency’s MCC with the practice as a “managed account.” On departure, the practice discovers they own none of their own marketing infrastructure.

The promise: Every asset is registered in the practice’s name, on the practice’s credentials, on standard platforms. We are added as a manager or editor; we are never the owner. On offboarding, you remove our access and nothing else changes. We provide a written asset-export confirmation as part of every offboarding, listing every login, account, and asset and confirming the practice owns each one.

4. Ad spend goes directly to Google, Meta, Bing — never through us.

The pattern: Bundled retainers where the agency invoices “$1,000/month for marketing” and pays the ad platforms on the practice’s behalf. The dentist never sees the Google Ads invoice. Industry investigations have found that as little as $200 of a $1,000 bundled retainer actually reaches the ad platform.

The promise: If you run paid ads, the ad account is in your name, billed to your credit card. We are an added user. The Google or Meta invoice goes directly to you. Our management fee is a separate, transparent line item — typically a flat number, never a percentage of ad spend (which incentivizes us to recommend higher spend, which is exactly the wrong incentive).

5. Every month, on a public page just for your practice, we publish what we did.

The pattern: “Set it and forget it” service after the sale. Vague monthly reports about “ongoing processes.” The dentist has no way to verify whether the agency actually shipped work in any given month.

The promise: Every Thorli client gets a private public dashboard URL that lists every piece of work shipped that month — pages updated, schema deployed, AI citations earned or lost, GBP photos uploaded, GBP Posts published, content drafted and approved, links earned. The dashboard is updated weekly. If a month passes with no visible work, you can cancel that day and we refund the month.

6. Real humans write the content. Bylines and “medically reviewed by” stamps are real.

The pattern: AI-spun blog content shipped under the dentist’s name without consent. Generic articles bought from $40-per-post content mills. Dentists discovering their own “blog” reads like ChatGPT slop and is now embarrassing them with patients.

The promise: Every piece of content has a real human writer (we use AI for drafting research, never for final-draft content). Every clinical page has a “medically reviewed by Dr. [Name] on [date]” stamp that reflects an actual review by an actual clinician. No content ships under your name without your written approval.

7. We track patients booked, not impressions, leads, or rankings nobody cares about.

The pattern: Reports full of impressions, click-through rates, and “keyword positions” for terms patients do not search. No tracking back to new-patient exams booked. No tracking back to production dollars.

The promise: The primary metric on every report is new-patient appointments booked from the channels we manage. Call tracking lives in your account. Recordings are reviewed quarterly. We benchmark to chair-side production where the practice management software allows it. Vanity metrics are footnotes, not headlines.

8. Account managers do not rotate. The person who sold you is the person who runs your account.

The pattern: The senior strategist sells the deal. Account is then handed to a rotating cast of junior account managers, often two or three different ones inside a year. The practice re-explains itself every time.

The promise: The person who runs your discovery call is the person who runs your account. If they ever change, you get a 60-day notice, an introduction call with the replacement, and the option to cancel that month with full refund of the partial month if you do not want the change.

9. We respond to simple requests within 24 business hours. Always.

The pattern: Two-week waits for homepage phone-number changes. “We will get to it next sprint” responses for one-line copy edits. Simple requests bundled into monthly retainer hours that are never actually tracked.

The promise: Simple requests — copy edits, photo swaps, hours updates, contact info changes, broken-link fixes — are turned around within one business day, no questions asked, no hour tracking. Larger requests get scoped within 24 hours with a clear timeline. If we miss the 24-hour response on a simple request, you can cancel that month at any time with no fee.

10. No exclusive-territory lies. We tell you exactly which other practices we work with in your metro.

The pattern: Agencies selling “exclusive territory” in a metro, then quietly signing the competitor a mile down the road. Dentists discovering months later that the agency is split-testing creative across two competing practices.

The promise: We publish our full client list to every active client every quarter. If we ever work with a practice within a five-mile radius of yours that competes for the same patient set, you find out the day we sign the second one — and you get the option to cancel that month with no fee. We do not believe in “exclusive territory” sales pitches that turn out to be lies. We believe in telling you who else is on the roster.

The test for any agency — including us

If you are evaluating any dental marketing partner — Thorli or anyone else — read whatever they put in front of you for these ten things. Specifically:

  • Is the price on the public site, and does it match the contract?
  • Can you cancel month-to-month with 30 days’ notice, no fee?
  • Is every asset in your name, on your accounts?
  • Is the ad invoice in your name, paid by your card?
  • Is there a public dashboard showing what they shipped each month?
  • Will real humans write your content, with real reviewer stamps?
  • Do reports lead with new-patient appointments, not impressions?
  • Will the same person run your account from day one to the end?
  • Is the response SLA on simple edits written down?
  • Will they disclose every nearby competitor on their roster?

If the agency cannot say yes to all ten in writing, ask why. The honest answers will tell you everything about what kind of partner they will be once the contract is signed.

Read the full Bill of Rights

The full Bill of Rights — including the exact contract language, the offboarding asset-list template we use, and the cancellation procedure — lives at thorli.com/bill-of-rights. Read it before you sign anything with us. Read your existing agency’s contract against it. Tell us where we missed something.

If the Bill of Rights is the kind of agreement you want with a marketing partner, the next step is the free 50-point AEO audit. Request it at thorli.com/free-audit. 48-hour turnaround, no sales call required, and the audit itself ships under the same Bill of Rights — meaning you keep the PDF, you own the work, and we never auto-bill anyone. That is the kind of dental marketing we wish had existed when we first started doing this work. Now it does.

Want to know what AI says about your practice?

Free 50-point AEO audit. Delivered in 48 hours. No card. No call required.