services

Publishing & Media · A Happy Cog vertical

Happy Cog is a full-service digital agency. For a publisher, that means one team on the brand, the site, the CMS, the paywall, and the marketing.

Strategy, brand, design, engineering, subscription infrastructure, SEO, and analytics, all in-house since 1999.

Most publishing programs are split across a design shop, a development partner, a subscription vendor, and an SEO agency, and the seams between them are where the work goes wrong. Our designers shape the article template an editor files into, and our engineers build the fields behind it. The team that writes a paywall rule also reports on what it earned, and the person who can tell you which author converts readers into subscribers helped build the system that knows. We also staff a dedicated Author Experience Lead, because the person filling the CMS is a user too.

Three practices, one team Design Engineering Subscriptions Audience
Start a conversation →

We'll reply within one business day. No sales sequence, no spam.

Case study · Canary Media

Canary Media had four months to pull off a major brand pivot, and their old tools couldn't keep up.

Canary Media is a nonprofit newsroom covering the economy's transition to clean energy, spun out of Greentech Media and staffed by reporters from the New York Times, the Guardian, and Vox. By 2021 it had a readership of legislators, policymakers, and analysts, plans for video explainers, podcast series, sponsored content, and several new article formats, and a publishing setup that could not carry any of it.

A trademark conflict surfaced mid-engagement, so the brand had to be rebuilt at the same time as the platform. Strategy, brand, design, UX, development, and analytics all ran out of one team, on a headless Sanity build with a custom front end.

4

Months from sale to launch

Including an unplanned rebrand, workshopped with Canary's stakeholders rather than presented to them.

6

Practices, one engagement

Visual identity, website redesign, front-end development, CMS, GA4, and SEO, with no vendor seam between them.

0

Journalists blocked by the tool

Non-technical staff and reporters in the field publish without help, and the build meets accessibility, GDPR, and privacy requirements.

"Traffic has increased markedly, so we know people besides us also like our new site better—they keep coming back."

Nicholas Rinaldi, general manager, Canary Media

Organizations we've worked with

A publishing agency trusted by wire services, trade portfolios, newsrooms, educational publishers, and scholarly societies.

Associated Press ProPublica McGraw Hill HMH Observer Commercial Observer Playbill Canary Media philly.com Zagat

Design, engineering, subscription infrastructure, SEO, and analytics across financial and professional trade media, daily and investigative news, educational and academic publishing, scholarly societies, and consumer enthusiast titles.

What we optimize for

Pageviews are the easiest number to move. They also tell you the least about the business.

Most publishers have sat in the version of this meeting where traffic is up, the referral mix has changed, and revenue hasn't moved at all. Every number on the screen is real. The problem is that a pageview is an event with nobody attached to it, and a business that runs on subscriptions, newsletters, and sold audience needs to know which reader came back, which one registered, which one paid, and which one renewed a year later.

We build against those numbers instead, because they're the ones that survive a change in how search decides to distribute traffic. Registered readers, subscription starts, retention, newsletter engagement, and revenue per reader are all durable in a way that sessions are not, and a program built on them keeps working when an answer engine starts summarizing your reporting instead of linking to it.

Anonymous reader Known reader Registered Subscribed Retained Revenue per reader

None of that chain is measurable while reader identity lives inside a platform you license rather than a system you control. Everything else here exists to close that gap.

The problems we solve

Publishing programs break in four places, and publishing more fixes none of them.

These four patterns turn up in almost every publishing organization we take over, at every size and in every category. They compound, which is why solving one and leaving the other three tends to produce a faster site and the same revenue.

01

The CMS is the bottleneck the newsroom works around

Every new layout needs a developer, so the newsroom stops asking.

When a feature treatment takes three days to request and a plain article template takes four minutes, editors will file the plain one, and they'll keep filing it. That's a rational response to the tooling, and the cost stays invisible because no ticket queue records the story that got told in the only shape available. We've watched teams paste from Google Docs, flatten headlines into images to get the typography they wanted, and rebuild the same three-image layout by hand a hundred times, all because the CMS was specified for the people reading the site and never for the people filling it.

02

Your reader identity belongs to a vendor

Accounts, entitlements, gating rules, and payments sit inside a platform you license.

Your audience data is the most valuable asset the business owns, and in this configuration it's rented. Changing a subscription tier becomes a support request, personalization stops at whatever the vendor chooses to expose, and the analytics can never join a paying reader back to the coverage that convinced her, because the two systems have no shared identity to join on. Moving that layer in-house is unglamorous engineering, and for a subscription publisher it is usually the highest-return work available.

03

Answer engines summarize your reporting and send nothing back

A reader can now get the substance of a story without ever reaching the page.

Publishers were the first business model to feel this, and they're feeling it hardest. Being named and cited by an answer engine is now a distribution outcome in its own right, one you can build for and measure. And because citation follows content structure, the fix lives in schema, entity clarity, and how the archive is organized, not in a list of keywords.

04

Measurement stops at the pageview

The newsroom works in authors, topics, and series. The analytics reports on URLs.

Most publisher analytics can tell you sessions by section and almost nothing about which author earns loyal readers, which topic converts to a subscription, how far into a long-form piece people actually get, or which newsletter send produced the renewal. Editorial planning then runs on instinct, and the subscription team can't tell the newsroom which coverage pays for itself. Both teams are working hard against the same missing data.

Author experience

Somebody here owns the experience of writing into your CMS, and it is their whole job.

Most CMS work gets specified for the audience and then adapted, late and partially, for the people who fill it. We build the other way around. Author experience at Happy Cog is a named role rather than a line item absorbed into a developer's remaining hours, which means content modeling, control panel design, editorial documentation, and training all have an owner whose job is the editor's day. The phrase has been in use internally long enough that our designers use it as readily as our engineers do, and it shows up in the first week of a project, long before user acceptance testing.

A note on the pedigree: our designers did the work behind the WordPress admin control panel. We bring the same attention to a Craft control panel, a Sanity studio, or a custom editorial tool.

The content model is the source of truth

Before anything gets built, our team produces a governed map between the CMS and the site's information architecture, and every new request afterward goes through that document rather than around it. It settles naming, structure, and interaction once, so the eleventh content type behaves like the first. The naming follows your editorial team's own vocabulary, not ours, since an editor should never have to translate between what they call a thing and what the field is labeled.

Components an editor can compose with

Whatever the platform calls them, we build custom components for the layouts a newsroom actually files (styled callouts, pull quotes, author profiles, series navigation, data and chart embeds, and newsletter modules), and we save groups of them as reusable patterns so a feature treatment can be assembled on deadline. The measure of whether this worked is whether an editor built something last week that nobody on our team had to look at first.

Bylines that match how journalism is actually credited

Co-authored pieces, guest contributors with no site account, freelancer profiles, and staff pages all need to work from a single author record that drives the byline, the archive page, the newsletter, and the reporting at the same time. We've migrated a portfolio between two different multi-author systems mid-project to get this right, mapped guest authors to profiles without creating accounts for them, and wired author identifiers through to the email platform so an author page and an author's newsletter agree with each other.

Documentation and training inside the tool

Our team writes guidance at the field level, inside the CMS, where an editor is standing when the question occurs to them. We also build practice time into the launch plan. On a recent nine-brand migration the editorial team asked for more rehearsal in the new environment before live publishing began, and we moved the date rather than argue with the request, because an editorial team that trusts the tool on day one is the entire point of the exercise.

AI where it helps an editor, and nowhere else

Our engineers have built automated editorial review comments that appear on a draft when an author hits save, draft assistance that understands a specific site's content model rather than generic prose, and generated summaries and previews across archives running into thousands of pages. The judgment stays with the editor in every case, and what the tooling removes is the part of the job that was never editorial. Clients hire us as a senior, opinionated team that uses AI to do more, faster, with better judgment, and the human expertise is what makes the AI worth trusting.

Design & experience

The reading experience is the product, and it has to hold up on a page carrying advertising.

Publishing design is typographic before it is anything else, and it gets judged across thousands of articles rather than on one homepage comp. The real question is whether the article template still reads well on the four hundredth story, the one with a pull quote, three images, a captioned chart, an interactive, and an ad unit dropped into the middle of the second section. Our designers have built brand systems, editorial systems, and full product experiences for wire services, trade portfolios, newsrooms, and educational publishers, and the craft that goes into a consumer launch goes just as readily into a topic archive that only the most loyal two percent of your audience will ever open.

Article templates designed as a system

Long-form, split, full-width, liveblog, and photo-led variants that share one type scale and one set of rules, so an editor selects a shape instead of requesting a design. The detail work is where this either succeeds or quietly fails, and it is specific: where the author headshot and bio sit when a piece is bylined by a known columnist rather than a staff writer, how a caption behaves when an image runs full-bleed, and whether the dateline and the update timestamp can both be present without competing.

Multi-brand design systems

A shared parent system carrying the structure with per-brand identity layered on top is how a portfolio of distinct titles shares one platform without turning into nine coats of paint on the same site. It also means a platform-level improvement to the reading experience reaches every property at once, which is the part of the consolidation argument that only becomes obvious a year after the migration.

Taxonomy and cross-linking as design decisions

Topics, series, franchises, and author archives deserve to be designed as real destinations rather than generated as filtered lists, because those pages are what make an archive compound in both search and answer engines instead of sitting inert. We design the routes between related coverage during the strategy phase, and we've rebuilt a publisher's taxonomy specifically to make cross-linking possible where the previous structure made it impossible.

Accessibility that survives procurement

WCAG conformance turns up in institutional advertising reviews, public sector requirements, and library and university licensing agreements. We've been doing accessibility work since long before it became a compliance question, our expertise predates ADA Title II, and it is one of the reasons clients in regulated and publicly funded categories stay with us.

Engineering

A publishing platform is infrastructure with a deadline attached, because the newsroom cannot stop publishing while you rebuild it.

Recent publishing builds have run on Sanity, Craft CMS, WordPress VIP, and headless architectures with custom front ends.

We are platform agnostic. The recommendation comes out of what fits your archive, your editorial team, and your roadmap, not out of what we happen to enjoy building or which partner program we belong to. Our engineers work across Sanity, Craft CMS, Laravel, Contentful, headless architectures, and WordPress VIP, where we are a Premier Partner, and we build the custom applications, subscriber portals, and integrations that publishing organizations need alongside the site itself. The team that architects your platform is the team that runs it afterward.

Migrations off legacy and enterprise platforms

Our team migrates content by script, not by hand, which removes both the months and the transcription errors. We inventory what actually exists first (articles, pages, image assets, video, documents, metadata, taxonomies, and the data relationships between all of it), then run a full migration pass while development is still finishing so there is real time to QA the data and adjust, and finally run a catch-up import before launch covering everything written or edited since. On a recent engagement we moved nine properties off a legacy enterprise CMS this way, and the sequence above is the reason the launch was uneventful.

Multisite networks for portfolios

One installation powering many titles gives you centralized management of themes, plugins, and users, with each brand holding its own space for identity and content. A shared parent theme carries consistency and child themes carry the customization, which is what lets the second site migrate in a fraction of the time the first one took.

Frontend strategy, decided during discovery

On a migration where the current design is staying, adapting the existing frontend is faster and rebuilding it produces something easier to live with, and the honest answer is usually a mix of both within a single site. We make that call with you during discovery, with the trade-offs between speed, budget, and long-term maintainability written down, because the choice also determines how much of the editing experience can move into the block editor on day one rather than in a later phase.

Speed on a page that carries advertising

Core Web Vitals, and Interaction to Next Paint in particular, decide both how you rank and how much of your traffic reaches the second scroll. Ad technology is the hardest constraint on both, and it is the reason publisher performance work is genuinely harder than performance work anywhere else. We hold builds to those numbers during the build rather than discovering them in a report a month after launch.

Distribution and syndication

Apple News, feeds, newsletter platforms, and the structured output that aggregators and syndication partners expect. We've published clients into Apple News and integrated audience platforms so that newsletters, topics, and author records stay consistent between the CMS and the email system instead of drifting apart over a year.

Subscriptions & reader identity

A paywall is where you decide who owns your audience.

Stripe Partner

Moving accounts, gating, payments, and on-site messaging out of a third-party platform and into your own stack changes what becomes possible downstream. Native user accounts mean the audience data is yours to query and to build on, subscription tiers and metered rules get managed by the people who set the strategy instead of filed as requests, payments integrate directly, and personalization is no longer capped by what a vendor chose to expose. We have done this. For a nine-brand financial and professional trade publisher we replaced their subscription and identity platform outright, migrating reader accounts to native platform users, rebuilding the paywall and gating layer, integrating payments directly, and bringing targeted messaging in-house.

Migrating subscribers without a password reset

The mechanism is worth describing plainly, because the mechanism is the proof. Our engineers export the full user list through the incumbent platform's API, create each account on the new system flagged as a legacy record with no password stored, and then, the first time that reader signs in, authenticate the credentials they typed against the old platform in the background. When it clears, we hash and store the password locally and remove the flag. An active subscriber never learns that a migration happened, which matters because a forced password reset across a paying audience is the single most expensive event in a replatform.

Tiers, metering, and entitlements you can change yourself

Subscription tiers, content bundles, metered access rules, corporate and site licenses, and institutional access all managed inside the CMS by the people responsible for the revenue. The test of this is whether your audience team can run a two-week paywall experiment without opening a ticket, and if they can't, the platform is making the strategy for you.

Payments and billing engineering

Recurring subscriptions, renewals, failed-payment recovery, upgrades and downgrades, group and enterprise billing, and the reconciliation that keeps your finance team out of a monthly spreadsheet. Our Stripe practice runs to more than thirty Stripe-experienced engineers and over forty implementations, so Connect for multi-entity fund routing, Billing for recurring contracts, and direct payment integration are all work we engineer to fit how your revenue actually flows.

Registration as the step before subscription

Newsletter registration, gated research, and event signup are the least expensive way to turn an anonymous reader into a known one, and they only compound if that identity gets written somewhere your marketing stack and your analytics can both reach. Getting this right is what makes the rest of the funnel measurable, and it is usually the fastest win available in the first ninety days.

If you also sell directly (books, courses, institutional licensing, or merchandise) our E-Commerce practice is the same team.

SEO, AEO & GEO

A reader may get your reporting without ever reaching your site, and that is a structure problem before it is a ranking problem.

Research and news consumption have moved into ChatGPT, Google AI Mode, Perplexity, Copilot, and Claude, and publishers absorbed that shift before anyone else did. Whether one of those systems names your publication comes down to complete and correct structured data, consistent entity information about the publication and its authors across the web, genuinely useful coverage organized into real topical clusters, and an archive that stays legible at scale. None of that is keyword work. We treat this as an extension of our SEO practice, and we instrument AI-referred traffic now, while the volume is still small, because the trajectory matters more than today's number.

Technical SEO at archive scale

Our audit runs a publishing site against a checklist of more than a hundred SEO components, covering indexation across tens of thousands of URLs, canonical and pagination handling on topic and author archives, redirect integrity, internal linking, backlink profile, and metadata completeness, and it produces a prioritized list of what to fix instead of an inventory of what is wrong. On a publishing site the archive is the asset, so crawl efficiency is what determines whether the back catalog earns anything at all.

Structure that makes an article citable

Article and NewsArticle schema, clean author and publisher entities, unambiguous datelines and update timestamps, and standfirsts and summaries written so that a model lifting them gets the story right. This is also where automated summarization across a large archive earns its place, and we've built exactly that, generating structured previews across thousands of pages so that every piece in a back catalog has something accurate for a machine to read.

Migration SEO, which is when publishers lose the most traffic

Redirect mapping, URL structure decisions, and parity testing all run during the build, so problems surface before launch instead of on a traffic chart six weeks after it. We've documented post-launch organic performance for a newsroom site we designed and built, which is a different kind of evidence from a redirect spreadsheet, and it is the one worth asking any agency for.

Measuring what answer engines actually send

Search Console's generative AI reporting, AI referral segmentation in GA4, and prompt-level visibility testing so that an editor can see which coverage gets named and which gets summarized away. This only recently became measurable at all, and the publishers who start instrumenting it now will be the ones with a year of trend data when the conversation gets serious.

Authority, syndication, and the link profile

Coverage analysis, top linking site and target page review, and the republication and syndication decisions that either build authority or quietly hand it to somebody else. We've run this analysis for a media brand with a large and complicated link profile, and the syndication question in particular is one most publishers have never examined from an authority standpoint even though they renegotiate the deals every year.

Analytics & measurement

An editor should be able to see which author and which topic produce paying readers.

Most publisher analytics answer questions about pages and almost none about people, which is a configuration problem (the tools are capable of far more). Our analytics team builds measurement around the units the newsroom and the subscription team actually work in, and we care less about delivering a dashboard than about whether an editorial planning meeting changes because of something on the screen.

Author, topic, and series reporting

We've built author-level post and pageview reporting for multiple media brands, article-level reporting for a consumer publisher with a deep archive, and topic performance views that hold up over time instead of resetting every quarter. Editorial teams use these weekly, which is the only real measure of whether reporting was designed for its reader.

The subscription funnel, instrumented end to end

Paywall impressions, meter exhaustion, registration, trial start, subscription start, and renewal, each joined back to the content that produced it. Once that chain exists, the question "which coverage earns subscribers" stops being a matter of opinion, and the follow-up question about what a subscriber from a given topic is worth becomes answerable too.

GA4 and tag management built to survive a consent change

Server-side tagging, consent mode, and a documented dataLayer specification. This matters more for publishers than for almost anyone else, since advertising technology and consent management platforms interact badly and they do it quietly, and the failure shows up as a gap in the data three months later rather than as an error anybody saw.

Reporting the newsroom and the revenue team can both read

An executive editor and a chief revenue officer ask different questions about the same story, so we build different views on one set of numbers rather than one compromise report that neither of them opens. Our analytics work also includes the audit that comes first, because we'd rather find the duplicate property, the unmapped event, and the inconsistent definition in week one than explain in month three why the numbers moved.

Paid media

For a publisher, paid media buys readers and subscribers.

Most agency paid media playbooks are written for a lead or a transaction, and a publishing organization is buying neither. Subscription and registration acquisition has to be judged on trial-to-paid conversion and retention rather than on cost per signup, because a cheap signup that churns in month two is a loss the platform will happily keep finding for you. Newsletter growth is worth funding even though the return shows up months later in subscription conversion, and getting credit for that requires the identity and measurement work described above. Event and conference promotion runs against a fixed date, which changes the pacing and the bidding entirely. Audience extension programs, where you deliver campaigns for your own advertisers beyond your own inventory, are a revenue product, not a marketing expense, and they need to be built and reported as one.

Our team runs Google, Microsoft, Meta, LinkedIn, and the major DSPs, and we have been running machine learning in bid and budget management since 2013. We also build the offline conversion pipelines that send real subscription and revenue events back to the ad platforms, which is what lets a bidding algorithm optimize toward a renewing subscriber instead of toward whoever is most likely to start a free trial.

AI in production since 2013

We have been running AI in paid media since 2013. The rest of our practice caught up.

When the industry started describing AI as a differentiator, our paid media team had already been running it in production for over a decade; we integrated machine learning into bid and budget management in 2013. Today AI runs through every discipline we practice, including editorial review comments that appear on a draft when an author saves it, summarization across archives too large to process by hand, batch agent frameworks we built and released ourselves, and the structured data work that keeps a publication legible to the systems now deciding who gets cited.

Our AI practice also covers advisory work: strategy, AI-powered product features, MCP integrations, AI-assisted content workflows, and the evaluation and governance that keeps any of it defensible in a category where a factual error is a correction and a reputational cost rather than a bug.

2013

AI in paid media

The year we integrated machine learning into bid and budget management.

30 min

Optimization cadence

How often our system reacts to live auction behavior across every channel.

0

Black boxes

Every decision the system makes is visible. You see what we see.

One team

Our designers understand a byline, and our engineers understand a deadline.

The article template, the CMS fields behind it, the schema it emits, the paywall rule that governs it, and the report that measures it are five artifacts that all have to agree with each other, and in most publishing organizations they are owned by five different vendors. That is where the disagreements live, and it is why a change to the reading experience takes a quarter and a change to a gating rule takes a support ticket.

When the design, engineering, and marketing teams are the same team, those problems stop falling between people. The editor who needs a new block talks to the person who builds it. The team that instruments the subscription funnel reads the report it produces, and because the people who write a migration's redirect map answer for organic traffic afterward, nobody gets to attribute a decline to somebody else's implementation. The senior people in the first conversation are the people who do the work.

Selected work

The same practice, at work on real publishing organizations.

Performance data stays anonymized where a client hasn't cleared it. The work speaks well enough without the nameplate.

Platform consolidation · Subscriptions · Author experience · Analytics

Financial and professional trade publisher

Nine properties migrated off a legacy enterprise CMS onto a single multisite network, with the incumbent subscription and identity platform replaced outright. Reader accounts became native platform users, the paywall and payment layers were rebuilt in-house, content and media moved by script, and the editorial teams were trained with rehearsal time in the real environment before live publishing began. Not one subscriber had to reset a password.

Design · Development · SEO

Canary Media

Design and build for a nonprofit clean-energy newsroom, including an article template system covering full-width, split, and standard layouts, followed by an ongoing SEO engagement with documented post-launch organic performance.

Read the case study →

Analytics · Measurement strategy

Consumer publisher with a deep archive

An analytics implementation built around the units the newsroom works in, including article-level and author-level reporting, developed out of stakeholder interviews, not from a template.

Platforms & partners

The platforms we build on, publish through, and answer to.

Some of these are formal partnerships we've earned, including WordPress VIP Premier Partner and Stripe.

Build platforms

WordPress VIP Craft CMS Laravel Sanity Contentful

Subscriptions & payments

Stripe

Audience & distribution

Piano Apple News

Analytics

Google Analytics 4 Google Tag Manager

AI discovery surfaces

ChatGPT Google Gemini Perplexity Microsoft Copilot Anthropic Claude

Start a conversation

Running a publishing organization? We'd like to hear what you're solving for.

Maybe you're planning a move off a CMS your newsroom has outgrown, replacing a subscription platform that owns more of your audience data than you'd like, rebuilding the article experience, working out why your archive stopped earning, trying to get named by the answer engines that now sit in front of your reporting, or figuring out what a subscriber from a given topic is actually worth. Thirty minutes with the people who would do the work is a reasonable place to start.

Tell us what you're solving for.

We'll reply within one business day. No sales sequence, no spam.

Talk to the team that'd do the work.

Start a conversation