Lifetimely: PPC Report
PPC Report
At a glance
The PPC Report shows Amazon advertising spend and Amazon-attributed sales at campaign, ad-group, or keyword level. Use it to find high-spend targets, separate traffic-cost problems from conversion problems, and decide where to review bids or budgets in Amazon Ads.
Availability and data freshness
Availability and prerequisites: Available only in an Amazon store context; Shopify stores are redirected away from this route. Connect and authorize Amazon Ads and select at least one advertising profile to import.
Freshness and history: Amazon Ads imports are scheduled daily at 2:00 a.m. UTC, but completion time is not guaranteed. The update import requests the latest three days so Amazon revisions can replace recent facts. By default, the report opens to the previous 30 days through yesterday; a date range previously selected in another report can replace this default.
On this page
- Open the report
- Use the report controls
- Understand what is included
- Review metrics and calculations
- Check a result
- Resolve differences
Open the report
From Profit & loss, select PPC Report (/profit_and_loss/pay_per_click). If the table is empty, first verify the Amazon Ads authorization and selected profiles in the Amazon Ads integration.
Use the report controls
Choose the reporting period and level
- Time period: Select custom dates or Yesterday, Last 7 days, Last 30 days, Last 180 days, Last 365 days, This month, or Last month. Except for Last month, presets end yesterday. Date-picker boundaries are created in the store timezone, but the report filters Amazon's daily report date; it does not re-time individual ad events.
- Group by: Defaults to Campaign. Campaign rows expand to ad groups and then keywords. Ad Group returns ad groups that expand to keywords. Keyword returns a flat keyword table. Changing the grouping resets the report to page 1.
- Status: Defaults to All; the other values are Enabled, Paused, and Archived. This filters the status selected from imported keyword facts, not a reconstructed current or end-of-period campaign state. See Status and historical ranges.
The page has no Amazon Ads profile, marketplace, ad-type, product, order, or P&L prefilter control. All imported profiles selected in the Amazon Ads integration are combined automatically. The store display currency and timezone are sent with the request, but the active calculation does not use them to convert money or reassign source dates.
Search, columns, hierarchy, and pagination
- Search by campaign or keyword: Enter a value and press Enter or select the search icon. Search is applied only at two or more characters, matches campaign or keyword names, and does not match ad-group names. Clear the field to remove it.
- Columns: All 15 table columns are initially visible. The selected grouping column is required; Columns can hide the other 14 for display. Column choices are page state only and do not change calculations or CSV fields.
- Expand rows: In Campaign view, expand a campaign and then an ad group to inspect the keyword facts included in its total. In Ad Group view, expand a row to inspect keywords.
- Pagination: The default is 10 top-level groups per page; choose 10, 25, 50, or 100. The server chooses the highest-spend top-level groups for each page, but the table has no customer-controlled sort. Nested rows do not count against the page size.
Export CSV
Export CSV reruns the active dates, grouping, status, and search from page 1 with a limit of 250 top-level groups. It exports every metric column, regardless of the column selector, plus Type and Name. Campaign exports include all returned ad groups and keywords beneath each selected campaign; ad-group exports include their returned keywords. Consequently, the file can contain more than 250 physical rows, but it can omit top-level groups beyond the first 250.
Caution: The CSV does not include advertising profile, marketplace, or source-currency columns. A shop with several selected profiles cannot use this export to separate their results.
Data contract: what is included
Where the data comes from
| Report section | Data used |
|---|---|
| All monetary and activity metrics | Amazon Sponsored Products targeting reports imported daily for the selected Amazon Ads profiles. The source requests daily campaign, ad-group, targeting/keyword, spend, click, and attributed-conversion fields. |
| Campaign rows | Included keyword-ID facts summed to the displayed campaign name. |
| Ad Group rows | Included keyword-ID facts summed to campaign + ad-group name; only the ad-group name is displayed at the top level. |
| Keyword rows | Included daily facts summed by campaign ID + ad-group ID + keyword ID; only the keyword/targeting label is displayed. |
The active query includes only source rows with a keyword ID. This excludes imported Sponsored Brands rows, whose current ingestion records do not have keyword IDs, and can make the report lower than an Amazon Ads campaign-level total. Sponsored Display is not requested by the current campaign import.
Shopify/Amazon commerce orders, cancellations, refunds, taxes, product costs, Profit & Loss order prefilters, and the shop calculation profile are not inputs. Amazon Ads profile selection determines which accounts are imported, but campaign-name exclusions configured for marketing costs are not passed to or evaluated by this report query.
Aggregation and missing values
The source is daily and keyed by campaign, ad group, and keyword ID. Lifetimely first sums the selected dates at keyword-ID level, then adds those results for parent rows. Spend, clicks, orders, units, and sales are additive; parent CPC, ACOS, conversion, and CPO are recalculated from parent totals rather than averaged across children.
The response does not preserve the source IDs or profile ID in the table. It uses displayed names as row identifiers during transformation. Distinct entities with the same campaign, ad-group, or keyword name can therefore be difficult to distinguish and, at campaign level, can be combined. Blank metric values are normalized to zero by the response transformer; a table with no qualifying facts shows No data available.
Currency
The report sums monetary values as imported and does not filter, separate, or convert them by Amazon Ads profile currency. The UI then formats the result with the current store-currency symbol. If selected profiles use different currencies—or their currency differs from the store currency—the displayed sum and symbol are not a valid converted total.
Caution: Use monetary results only when all included Amazon Ads profiles share the same currency, and interpret that currency as the source account currency. Currency conversion shown for marketing costs elsewhere in Lifetimely does not apply to this PPC query.
Status and historical ranges
For each keyword ID, the query selects one status value from facts in the selected range and then applies Enabled, Paused, or Archived after that keyword-level aggregation. It does not determine the latest status by date. Campaign and ad-group rows display the status of their first transformed child.
This has two practical consequences:
- a historical row's displayed status is not necessarily its status today or at the range end;
- changing Status can change a parent total in ways that do not match filtering Amazon's current campaign list.
Metrics and calculations
| Field | Definition |
|---|---|
| Campaign / Ad Group / Keyword | Display name at the selected grouping level. Source IDs and profile are not shown. |
| Status | One imported status selected from the keyword's daily facts in the range; parent rows inherit the first child's status. |
| Ad Spend | Sum of Amazon cost for included daily keyword facts, displayed as currency. |
| CPC | Ad Spend / Clicks. Parent values are recalculated from totals. With zero clicks, the API returns 0 and the table displays a zero currency amount. |
| Clicks | Sum of Amazon-reported ad clicks. |
| 7d Sales | Sum of Amazon sales attributed within its 7-day click-attribution window. |
| 14d Sales | Sum of Amazon sales attributed within its 14-day click-attribution window. |
| 30d Sales | Sum of Amazon sales attributed within its 30-day click-attribution window. |
| Orders | Sum of Amazon purchases1d: purchases attributed within one day of a click. |
| Units | Sum of Amazon unitsSoldClicks1d: units attributed within one day of a click. |
| PPC Sales | Sum of Amazon sales1d: sales attributed within one day of a click. |
| ACOS | Intended calculation: Ad Spend / PPC Sales × 100. A lower value means less spend per attributed sales dollar. See the percentage-display caution below. |
| Conversion | Intended calculation: Orders / Clicks × 100. See the percentage-display caution below. |
| CPO | Ad Spend / Orders. With zero orders, the table displays a dash. |
| ROAS | PPC Sales / Ad Spend. A value of 4 means four source-currency units of one-day attributed sales per unit spent. With zero spend or zero PPC Sales, the table displays a dash. |
The source attribution rules, attribution timezone, click/view eligibility, and treatment of later cancellations or refunds are controlled by Amazon.
Caution — current percentage display: Keyword-level ACOS is rounded as a ratio to one decimal before the UI converts it to a percentage; keyword conversion is rounded as a ratio to two decimals. This can make those percentages coarse. More importantly, Campaign and Ad Group ACOS and conversion are already returned as percentages but the current table multiplies them by 100 again. Until this is corrected, do not use the displayed parent ACOS or conversion for decisions. Recalculate them from Ad Spend, PPC Sales, Orders, and Clicks, or use the CSV base fields.
Zero ACOS and conversion display as a dash in the table. The CSV contains the API's raw decimal values and reports ROAS as
0.00when spend is zero, so CSV percentage values are not formatted the same way as the table.
Check a result
Suppose an included set of keywords has 400 clicks, 20 one-day attributed orders, $200 spend, and $800 one-day PPC Sales:
- CPC =
200 / 400 = $0.50. - Conversion =
20 / 400 × 100 = 5%. - CPO =
200 / 20 = $10. - ACOS =
200 / 800 × 100 = 25%. - ROAS =
800 / 200 = 4.0.
Use those calculations from the additive fields rather than relying on the current parent percentage display. Then check the result in this order:
- Match the PPC Report and Amazon Ads date range, remembering that Lifetimely filters Amazon's daily report date and normally ends presets yesterday.
- Confirm which Amazon Ads profiles are selected and that they share the currency shown in Amazon Ads. The PPC page itself has no profile selector.
- Choose Keyword, set Status to All, clear search, and compare the included Sponsored Products targeting rows and one-day fields with Amazon Ads.
- Expand Campaign or Ad Group rows to find the contributing keywords. Recalculate parent rates from their summed base metrics.
- Allow the three-day update window to retrieve Amazon's recent revisions, then rerun the same comparison.
- Export only after checking whether 250 top-level groups cover the population you need.
Resolve differences
PPC Report does not match Amazon Ads
Check these differences in order:
- Scope: The report combines all selected profiles and exposes no profile/marketplace filter. It includes only facts with a keyword ID from the Sponsored Products targeting import; Amazon campaign totals can include other targeting or ad-product rows.
- Attribution window: Orders, Units, and PPC Sales use one-day fields. Compare 7d, 14d, and 30d Sales only with the matching Amazon field.
- Currency: PPC money is neither converted nor separated by profile, even though the UI applies the store-currency symbol.
- Dates and revisions: The selected source report dates, Amazon profile timezone, daily import completion, and Amazon's later attribution revisions can differ from a live Amazon screen.
- Status and identity: Status is not an end-of-period snapshot, and repeated display names can be combined or be indistinguishable.
- Limits: Search can silently remain inactive for one character, pagination selects top-level groups, and CSV stops after 250 top-level groups.
PPC Report does not match Income Statement marketing
PPC Report is keyword-level Amazon ad-attribution data. Income Statement reports total marketing costs under its own integration-account selection, campaign exclusions, currency conversion, and Profit & Loss calculation contract. PPC also excludes source rows without keyword IDs. The two reports therefore should not be expected to match without first aligning account scope, ad-product coverage, exclusions, source dates, and currency behavior.
PPC Sales does not match store sales
PPC Sales is Amazon's one-day click-attributed ad sales, not an order ledger. It does not apply commerce-order prefilters or account for Income Statement refund, tax, cancellation, or cost rules. Use Amazon Ads to reconcile attribution and use Income Statement or Orders to reconcile commerce and profit.
Next actions
- Reallocate bids or budgets only after recalculating parent ACOS and conversion from their base fields.
- Use Income Statement to compare advertising spend with total company profitability.
- Review attribution reporting concepts before comparing Amazon-native attribution with other channels.