How to effectively price your agency’s services for growth

August 9, 2024
0 minute read

Let’s knock this out upfront, if you’re struggling to price your agency’s services, you are far from alone. In a survey conducted by Bain & Company, 85% of respondents said that they believe their pricing decisions could improve.


That’s bad news. A famous study by McKinsey found that a price increase of just 1% equated to an 8% increase in operating profits. The opposite is true too. Setting your price 1% lower than your customers would pay lowers your profits 8% below your potential. However, McKinsey’s research assumes that volume remains unchanged, which is where pricing starts to get a little tricky.


We wrote a similar article to this one a few months back for SaaS companies featuring James Wilton, the Managing Partner and Founder of Monevate, a firm specializing in pricing and strategy consulting for tech companies. In that article, he introduces a concept he calls the “value leak.”


Essentially, at various points throughout the pricing process, businesses have the opportunity to misprice their products or services and forfeit, or “leak,” value.


Table of Contents

Has your pricing strategy sprung a leak?

Your services provide a tangible amount of value for your customers. Some of that value is measurable, like PPC campaigns, while others, like brand services or website design, might be a little fuzzier. Identifying how much value you’re actually creating, then helping your customers perceive that value, are the first two pricing hurdles most businesses face.


Unseen value, missed by either you or the customer, equates to a loss of potential profit. Marketing has a big impact here, if you aren’t positioning your services correctly then your customers simply will not be able to perceive the potential. How could they?


However, just because a customer can see the potential doesn’t necessarily mean they’re willing to pay that number. Price sensitive customers, particularly common among SMBs, may need you to price your services lower to fit within their budget. 


This number is aptly called their “willingness-to-pay” and it is uniquely difficult to calculate. Harvard Business School recommends surveying your customers directly, or maybe even some good old-fashioned trial and error.


Finally, if you’re cutting any deals during the sales process, that’ll impact your profits as well. Concessions like reduced rates and freebies essentially lower the price of your product in aggregate, siphoning away value. Sometimes this makes sense, especially if it can help your agency win a super desirable client, but you have to be judicious about it.

How much are other agencies charging?

We surveyed our own customers back in 2022 in an effort to better understand their businesses. The majority of respondents, almost exactly 40%, told us that they billed their clients between $21-$50 per month to host their sites. Nearly 30% told us they charged an initial build fee between $1001—$2500 for those same sites.




Of course, you can’t directly compare your prices to some other arbitrary agency’s prices. Your market, services, positioning, clientele, expenses, etc. all impact the price you can, and should, charge. Profit margin may be a more apt comparison instead.


Promethean Research found that, since 2015, the average profit margin for an agency in the US is roughly 16%. This is true for agencies across all headcount sizes, excluding studio agencies with fewer than 10 employees—they seem to be slightly more profitable.


If you combine that margin with the sum of your total costs and labor, then you may have just calculated a pretty good jumping off point for your pricing journey.

How should I structure my agency’s pricing?

Determining a price point might be putting the cart before the horse a little. You need to decide how you intend to charge your clients first.


From the trusted, reliable billable hour to more uncommon methods like value-based pricing, agencies have plenty of options to choose from when assembling their menu of services.


Hourly rates


Most agencies get their start billing by the hour, and for good reason! Hourly billing is dead simple to implement and directly rewards effort. It’s also easy to sell, because clients can easily understand it. That’s a lot of easy.


Unfortunately, the easiest way is rarely the best way. Since billable hours are linearly related to employee labor, it is far from a scalable pricing model. Cash is harder to come by with this method as well compared to other strategies.


Billing by the hour isn’t a great situation for your clients, either. They may disagree with the total number of billable hours that you charge them, or they may struggle to budget for work with an uncertain timeline. You can solve both of these concerns with an accurate estimate, but that comes with risk too. If you do more work than you initially estimated, for instance, then all you’ve done is traded one uncomfortable conversation for another.


Project-based


Hourly rates center your employees, making their expertise the product. Project-based pricing flips this idea, making the project itself the product. A lot of agencies using Duda sell their website design services this way, as a single, predetermined fee.


This structure works really well for projects with clear deliverables, and is far more scalable than an hourly rate because it doesn’t tie revenue to labor. However, it also exposes your agency to the risk of runaway projects where the labor costs exceed the project fee.


To reduce this risk, clearly define the project scope and deliverables in the contract, establish a detailed project timeline, and include a certain number of revisions within the agreed fee. Additionally, make sure to outline and communicate extra fees for additional rounds of revisions or scope changes. Regularly monitor project progress and maintain open communication with the client to manage expectations and address any potential issues early on.


Retainer-based


A retainer, popular in the legal field, is a prepaid amount of money that entitles the customer to a certain amount of work from your agency. That can either be in the form of billable hours or a predetermined number of deliverables.


An agency, for example, may charge an upfront project fee for a website then a monthly retainer that entitles their client to a certain amount of website maintenance. In fact, a lot of agencies using Duda do exactly that.


The downside here is that it transfers all of the risk to the client, many of whom may be reluctant to pay a retainer to an agency they’ve never worked with before. That’s why agencies choose to charge the retainer after the completion of a project.


Performance-based


Agencies working with identifiable metrics, like paid advertising, may choose to charge their clients based on the performance of their work. A marketing agency may charge per lead generated, for example. 


This approach is a bit of a double-edged sword. On one hand, agencies receive a commensurate proportion of the value they’ve created for their clients—which seems fair! However, if a project isn’t performing well, then that agency may be investing quite a bit of time for very little reward.


Clients love this strategy because, for them, it almost completely eliminates risk. They only pay for what they get, after all. That doesn’t mean risk ceases to exist, however. Instead, the agency takes on all of the risk. If you’re even considering this model, you need to have confidence that you can consistently deliver impactful results.


Value-based pricing


Value-based pricing, according to Function Point, ties the value of your agency’s work to the outcomes generated for the client. This is one of the most scalable pricing models for agencies because it completely separates profits and labor.


From an execution standpoint, it’s very similar to project-based pricing. You’re calculating the break-even cost of your project, then adding a margin. What sets value-based pricing apart, though, is how you set that margin.


When you use this model your margins should be proportional to the amount of value your service creates for your clients. Higher ROI work would command a higher margin. Project-based pricing, on the other hand, typically applies a set amount of margin without consideration for client value.


Earlier in the article, we discussed how businesses can leak value during the pricing process. Value-based pricing addresses all of those concerns, with all of the same caveats. Determining an appropriate margin can be a difficult task. You need to clearly articulate your product, position it well within the market, and promote it—all while being considerate of how much your ideal customers are even willing to pay.



When should I charge my clients?

So you know how much you want to charge your clients, and you know the way you intend to charge them. Now you just need to decide when you intend to send them the bill.


For any agency, sending a full bill up-front is the most desirable option. It minimizes risk and maximizes cash liquidity. Keep in mind, though, that this is not an option for agency’s billing by the hour. 


Some clients may be wary to pony up without seeing any work. In those scenarios, a split may be more appropriate. 50% up front and 50% upon completion is a very common option that still gives your agency some capital to cover expenses like employee wages.


Charging upon completion is another option, but not one we’d recommend. Ideally, you would collect at least some form of deposit before beginning work. For a dependable client with a great reputation, especially one you’d really like to work for, then this could maybe be an option.


For many agencies, billing isn’t a one-and-done event. Recurring payments are extremely common, especially when using a retainer-based pricing model or when selling products with ongoing costs like websites. Just like one off payments, you can choose to bill before, during, or after the service has been provided.


Whatever you decide, you need to be ready to enforce it. That means discontinuing your service if a customer is unable to pay, and invoicing consistently at whatever interval you’ve both agreed upon. There are tools, like our own client billing feature, that can automate this process to make things a little easier.


Putting it all together


Pricing is a crucial component in the success of your agency, but is also a uniquely personal one. The amount you charge your clients impacts more than your bottom line, it’s a reflection of your brand and the quality of work you produce.


Consumers relate price with quality, and your positioning should eagerly reflect that truth. It is also a reflection of scarcity and expertise. A boutique, verticalized agency serving high-earning clientele, like the medical field, can probably charge more than a generalist agency in a rural community.


You’ll need to strike the right balance to price your products in a way that reflects the quality of your brand and delivers the profit margins you need to survive and thrive without alienating your clients. It isn’t easy, but the work is well worth it.


Headshot of Shawn Davis

Content Writer, Duda

Denver-based writer with a passion for creating engaging, informative content. Loves running, cycling, coffee, and the New York Times' minigames.


Did you find this article interesting?


Thanks for the feedback!
By Shawn Davis April 1, 2026
Core Web Vitals aren't new, Google introduced them in 2020 and made them a ranking factor in 2021. But the questions keep coming, because the metrics keep changing and the stakes keep rising. Reddit's SEO communities were still debating their impact as recently as January 2026, and for good reason: most agencies still don't have a clear, repeatable way to measure, diagnose, and fix them for clients. This guide cuts through the noise. Here's what Core Web Vitals actually measure, what good scores look like today, and how to improve them—without needing a dedicated performance engineer on every project. What Core Web Vitals measure Google evaluates three user experience signals to determine whether a page feels fast, stable, and responsive: Largest Contentful Paint (LCP) measures how long it takes for the biggest visible element on a page — usually a hero image or headline — to load. Google considers anything under 2.5 seconds good. Above 4 seconds is poor. Interaction to Next Paint (INP) replaced First Input Delay (FID) in March 2024. Where FID measures the delay before a user's first click is registered, INP tracks the full responsiveness of every interaction across the page session. A good INP score is under 200 milliseconds. Cumulative Layout Shift (CLS) measures visual stability — how much page elements unexpectedly move while content loads. A score below 0.1 is good. Higher scores signal that images, ads, or embeds are pushing content around after load, which frustrates users and tanks conversions. These three metrics are a subset of Google's broader Page Experience signals, which also include HTTPS, safe browsing, and mobile usability. Core Web Vitals are the ones you can most directly control and improve. Why your clients' scores may still be poor Core Web Vitals scores vary dramatically by platform, hosting, and how a site was built. Some of the most common culprits agencies encounter: Heavy above-the-fold content . A homepage with an autoplay video, a full-width image slider, and a chat widget loading simultaneously will fail LCP every time. The browser has to resolve all of those resources before it can paint the largest element. Unstable image dimensions . When an image loads without defined width and height attributes, the browser doesn't reserve space for it. It renders the surrounding text, then jumps it down when the image appears. That jump is CLS. Third-party scripts blocking the main thread . Analytics pixels, ad tags, and live chat tools run on the browser's main thread. When they stack up, every click and tap has to wait in line — driving INP scores up. A single slow third-party script can push an otherwise clean site into "needs improvement" territory. Too many web fonts . Each font family and weight is a separate network request. A page loading four font files before rendering any text will fail LCP, especially on mobile connections. Unoptimized images . JPEGs and PNGs served at full resolution, without compression or modern formats like WebP or AVIF, add unnecessary weight to every page load. How to measure them accurately There are two types of Core Web Vitals data you should be looking at for every client: Lab data comes from tools like Google PageSpeed Insights, Lighthouse, and WebPageTest. It simulates page loads in controlled conditions. Lab data is useful for diagnosing specific issues and testing fixes before you deploy them. Field data (also called Real User Monitoring, or RUM) comes from actual users visiting the site. Google collects this through the Chrome User Experience Report (CrUX) and surfaces it in Search Console and PageSpeed Insights. Field data is what Google actually uses as a ranking signal — and it often looks worse than lab data because it reflects real-world device and connection variability. If your client's site has enough traffic, you'll see field data in Search Console under Core Web Vitals. This is your baseline. Lab data helps you understand why the scores are what they are. For clients with low traffic who don't have enough field data to appear in CrUX, you'll be working primarily with lab scores. Set that expectation early so clients understand that improvements may not immediately show up in Search Console. Practical fixes that move the needle Fix LCP: get the hero image loading first The single most effective LCP improvement is adding fetchpriority="high" to the hero image tag. This tells the browser to prioritize that resource over everything else. If you're using a background CSS image for the hero, switch it to anelement — background images aren't discoverable by the browser's preload scanner. Also check whether your hosting serves images through a CDN with caching. Edge delivery dramatically reduces the time-to-first-byte, which feeds directly into LCP. Fix CLS: define dimensions for every media element Every image, video, and ad slot on the page needs explicit width and height attributes in the HTML. If you're using responsive CSS, you can still define the aspect ratio with aspect-ratio in CSS while leaving the actual size fluid. The key is giving the browser enough information to reserve space before the asset loads. Avoid inserting content above existing content after page load. This is common with cookie banners, sticky headers that change height, and dynamically loaded ad units. If you need to show these, anchor them to fixed positions so they don't push content around. Fix INP: reduce what's competing for the main thread Audit third-party scripts and defer or remove anything that isn't essential. Tools like WebPageTest's waterfall view or Chrome DevTools Performance panel show you exactly which scripts are blocking the main thread and for how long. Load chat widgets, analytics, and ad tags asynchronously and after the page's critical path has resolved. For most clients, moving non-essential scripts to load after the DOMContentLoaded event is a meaningful INP improvement with no visible impact on the user experience. For websites with heavy JavaScript — particularly those built on frameworks with large client-side bundles — consider breaking up long tasks into smaller chunks using the browser's Scheduler API or simply splitting components so the main thread isn't locked for more than 50 milliseconds at a stretch. What platforms handle automatically One of the practical advantages of building on a platform optimized for performance is that many of these fixes are applied by default. Duda, for example, automatically serves WebP images, lazy loads below-the-fold content, minifies CSS, and uses efficient cache policies for static assets. As of May 2025, 82% of sites built on Duda pass all three Core Web Vitals metrics — the highest recorded pass rate among major website platforms. That baseline matters when you're managing dozens or hundreds of client sites. It means you're starting each project close to or at a passing score, rather than diagnosing and patching a broken foundation. How much do Core Web Vitals actually affect rankings? Honestly, they're a tiebreaker — not a primary signal. Google has been clear that content quality and relevance still dominate ranking decisions. A well-optimized site with thin, irrelevant content won't outrank a content-rich competitor just because its CLS is 0.05. What Core Web Vitals do affect is the user experience that supports those rankings. Pages with poor LCP scores have measurably higher bounce rates. Sites with high CLS lose users mid-session. Those behavioral signals — time on page, return visits, conversions — are things search engines can observe and incorporate. The practical argument for fixing Core Web Vitals isn't just "because Google said so." It's that faster, more stable pages convert better. Every second of LCP improvement can reduce bounce rates by 15–20% depending on the industry and device mix. For client sites that monetize through leads or eCommerce, that's a revenue argument, not just an SEO argument. A repeatable process for agencies Audit every new site before launch. Run PageSpeed Insights and record LCP, INP, and CLS scores for both mobile and desktop. Flag anything in the "needs improvement" or "poor" range before the client sees the live site. Check Search Console monthly for existing clients. The Core Web Vitals report surfaces issues as they appear in field data. Catching a regression early — before it compounds — is significantly easier than explaining a traffic drop after the fact. Document what you've improved. Clients rarely see Core Web Vitals scores on their own. A monthly one-page performance summary showing before/after scores builds credibility and makes your technical work visible. Prioritize mobile. Google uses mobile-first indexing, and field data shows that mobile CWV scores are almost always worse than desktop. If you only have time to optimize one version, do mobile first. Core Web Vitals aren't a one-time fix. Platforms change, new scripts get added, campaigns bring in new widgets. Build the audit into your workflow and treat it like any other ongoing deliverable, and you'll stay ahead of the issues before they affect your clients' rankings. Duda's platform is built with Core Web Vitals performance in mind. Explore how it handles image optimization, script management, and site speed automatically — so your team spends less time debugging and more time building.
By Ilana Brudo March 31, 2026
Vertical SaaS must transition from tools to an AI-powered Vertical Operating System (vOS). Learn to leverage context, end tech sprawl, and maximize retention.
By Shawn Davis March 27, 2026
Automate client management, instant site generation, and data synchronization with an API-driven website builder to create a scalable growth engine for your SaaS platform.
Show More

Latest posts