On a $2,000 to $5,000 monthly Meta budget, the agency’s fee structure can matter as much as its case studies. A $500 retainer takes another 25% of a $2,000 media budget; a cheap-looking percentage fee gives the agency a raise when you increase spend, whether the ads improve or not. I check the fee-to-spend ratio, creative volume and testing cadence before I look at the success stories. Open the proposal beside your actual monthly budget and run these 15 checks as pass or fail. Use what you can pay Meta each month, not what a sales call persuaded you to imagine. If three lines fail, pass on the proposal. If the agency cannot answer a line in writing, count that as a fail too.

1–3. Check what the agency earns before an ad runs

  1. Calculate the fee against your actual ad spend. Pass: the proposal states every monthly agency charge separately from the money paid to Meta, and you divide the first number by the second. A $750 retainer on $3,000 in ad spend is 25%; a $500 fee on $2,000 is also 25%, but falls to 10% at $5,000. That is the cost of management before an ad produces anything. Fail: “$800 a month plus ad spend” with no breakdown of what the $800 buys or which other charges apply. Percentage fees and flat retainers can look modest in isolation. Put them beside your budget and the proposal starts speaking plainly.

  2. Check what happens to the fee when spend doubles. Pass: the proposal shows the charge at both your current budget and a plausible higher one, with any cap or change in scope written down. Fail: an uncapped 15% of spend presented as alignment. At $2,500 in media, that is $375; at $5,000, it is $750. The agency earns more simply because you authorize more spend. That does not prove the ads will get worse, but it makes “raise the budget” an easier answer than “make better ads.” It is the retainer incentive problem in miniature. For comparison, groas lists Meta Ads at a flat $1,499 a month per service, with no setup fee. That is not a small fee on a $2,000 budget; the distinction is that it does not rise with spend.

  3. Find setup charges in the statement of work. Pass: setup is priced explicitly, including $0 if there is no charge, and the proposal names the work covered. Look for Business Manager access, Pixel installation, audience migration and Conversions API rather than the phrase “account configuration.” Fail: a $1,500 onboarding line with no deliverables beside it. Setup fees can run from $500 to $7,000, so this is not a minor footnote on a modest budget. A fee may pay for real work; make the agency name that work before you agree to it. Do not let “we handle tracking” stand in for a list of what gets installed and checked.

4–6. Count the ads, not the promises to optimize them

  1. Get a monthly count of new ads and their formats. Pass: the proposal commits to a number, such as 4 to 8 new static and video variants a month, and says what counts as a new variant. Fail: “ongoing creative optimization” with no count. Meta creative needs enough fresh material to test; a proposal full of dashboards and management hours tells you little about who will make the next ad. As a rough reference, creative-volume guidance points to about one new ad per $3,000 in monthly spend and reports an average of 2.8 new ads a week among advertisers spending under $10,000 a month. Do not treat either figure as your quota. Use them to make “ongoing” measurable.

  2. Name the person doing the creative work. Pass: the agency says who designs statics, who edits video from your footage, who writes copy and how many revision rounds are included. If video is included, the word video appears in the deliverables, not only in the pitch. Fail: you discover after signing that you must film, cut and write everything while the agency uploads the finished files. You may be happy to supply footage; that is different from supplying a complete ad. Ask what happens when the first batch misses. If the answer requires more work from you but no new work from the agency, price the proposal as an uploading service, not a creative one.

  3. Put the creative refresh trigger in writing. Pass: the proposal names who checks for fatigue and when they launch a replacement, such as when prospecting frequency passes 2.5 to 3 or CTR falls for two consecutive weeks. Fail: “we refresh as needed,” with no threshold, owner or next variant ready. A trigger is not a promise that either number will diagnose every campaign. It is a way to stop a weak ad from drifting through another reporting cycle while everyone agrees to keep an eye on it. Ask what gets replaced, who makes the replacement and whether it comes from the monthly creative allowance. Otherwise a refresh can become an extra invoice precisely when the account needs one.

A miniature proposal checklist and magnifying glass beside fee calculations

7–9. Give a small budget enough signal to learn

  1. Count funded tests, not campaign ideas. Pass: a restrained plan, such as two campaigns, roughly 70% prospecting and 30% retargeting, with one or two funded ad sets and one clear test at a time. Fail: five or six ad sets at $10 a day each on a budget that cannot support them. Meta’s learning guidance is often framed around roughly 50 conversions per ad set per week; dividing modest spend across more ad sets makes that harder, not easier. I used to tell clients that more ad sets meant more learning. I was wrong. Ask which test gets the budget first and what result would justify the next one. A proposal that funds every idea equally has not chosen a test.

  2. Name Pixel and Conversions API in the tracking scope. Pass: the statement of work specifies Meta Pixel, Conversions API and event deduplication by event_id, including who checks that events arrive correctly. Fail: “tracking setup included” with no method or owner. Do not buy a guarantee about attribution; buy an explicit setup and a way to inspect it. The Pixel-plus-CAPI comparison is a reason to ask what is implemented, not a substitute for checking your own events. If the agency says the details will be finalized after onboarding, stop the call. Tracking is part of the work you are agreeing to buy, not a surprise to be resolved after payment.

  3. Write down the number that defines success. Pass: one primary metric tied to the business outcome, with a window for judging it: for example, cost per qualified lead under $45 or ROAS above 2.5 over 60 days. The target is an example, not a number an agency can promise for your account. Fail: success described only as reach, impressions or likes. Those rise easily when spend rises, which is convenient if the fee also rises with spend. Ask what counts as a qualified lead or a sale before the first report arrives; otherwise the same results can acquire a new definition every month. A useful proposal tells you what the agency is trying to improve and when you will review the attempt.

10–11. Keep proof of work and access to the account

  1. Require weekly actions alongside results. Pass: a short report names the ads paused, variants launched, budget shifts made and next test planned; five to ten useful lines beat a polished PDF of impressions. Fail: reach and CTR screenshots with no account changes or explanation. A weekly report is not proof that every decision was right. It is proof that decisions happened, and it gives you something specific to question when performance slips. Ask who wrote the new headline, what prompted the budget shift and what the agency will check next week. If nobody can answer, you received proof of spend, not proof of management. Two quiet weeks of “monitoring performance” are expensive at this budget.

  2. Keep your own read and admin access from day one. Pass: you own the Business portfolio, ad account, Page, Instagram and Pixel; you invite the agency through partner access and can revoke it. Fail: “we run everything in our ad account for efficiency.” That sentence ends the call. It may sound like a convenient setup, but the convenience disappears when you leave without the account history or audiences built through your spend. The account-ownership checklist and this guide to hiring a Meta ads manager without losing your account or data cover the access question in more detail. For the proposal, the pass-or-fail test is simpler: can you open the account yourself without asking permission?

12–15. Read the exit terms before the pitch wins

  1. Check the contract length and notice period together. Pass: month-to-month after an initial term of no more than 90 days, with 30-day written notice and no automatic renewal lock. Fail: a 12-month commitment paired with 60-day notice buried in section 8. Read it as though you need to leave after 90 days, not as though the launch goes perfectly. A short contract does not fix bad work, but it limits how long you must keep buying it. Agency pricing red flags often live in the terms rather than the headline fee. Mark the date notice must arrive, who receives it and what you owe afterward. If the proposal cannot answer those points, it has not given you a usable exit.

  2. Separate any minimum media spend from agency fees. Pass: the floor is labeled as spend paid to Meta, such as a $50-a-day media minimum, with management charges shown on their own line. Fail: a “$3,000 agency-managed minimum” that never says how much reaches the ad account. On a $2,000 to $5,000 budget, that distinction changes the fee-to-spend ratio you calculated in item 1. Ask whether the minimum is a requirement to keep the account active, a recommended level for the proposed tests or a combined invoice. Those are different commitments. If the answer is only “that is our package,” keep asking for the split. You cannot judge the proposal’s incentive or its testing plan without it.

  3. Pay Meta directly from your own ad account. Pass: your card is attached to the account you own, and the agency invoices separately for its work. Fail: you pay the agency one amount and it pays Meta on your behalf without a clear, inspectable split. That arrangement can hide markup; a late payment can also pause ads while you assume the media bill has been handled. The clean-terms example is straightforward: you pay Meta directly and retain the account and its history. This is an ownership check as well as a billing check. Match the media amount in the proposal to what you can see Meta charging, and make sure the person approving spend is not forced to infer it from an agency invoice.

  4. Get every exit asset in writing before you sign. Pass: the Business portfolio, ad account, audiences, Pixel data, creative files and lead exports remain accessible to you when the relationship ends; the proposal says how the handover works and when partner access is removed. Fail: “campaign IP remains property of agency,” a vague promise to discuss handover later or any setup that lets the agency cut off access on exit. This is the line owners skip most. Price gets checked; exit ownership waits until someone tries to leave. I have seen owners spend $3,000 a month for six months and walk away with screenshots: $18,000 in media, plus fees, with no reusable account history, audiences or creative files. Put ownership on paper now. Rebuilding what you already paid for is the cost of skipping it.