---
title: "Remove a custom conversion goal"
method: DELETE
path: "/v1/ads/conversions/custom-goals/{goalId}"
tags: ["Conversions"]
---

# Remove a custom conversion goal

`DELETE /v1/ads/conversions/custom-goals/{goalId}`

Removes the goal. Google refuses (400) while any campaign still uses it: switch those campaigns to another goal first.

## Path parameters

- `goalId` string, required

## Query parameters

- `accountId` string, required
- `adAccountId` string
- `customerId` string

## Response `200`

Custom goal removed

- object
  - `customerId` string
  - `goalId` string
  - `removed` boolean — Always true on success

## Other responses

- `400` — Invalid request
- `401` — Unauthorized
- `404` — Goal not found on this customer, or account unavailable
- `409` — The account exists but is inactive or needs reconnection. Reconnect it, then read GET /v1/accounts for its current account ID before retrying. Code: ads_connection_required.
- `501` — Only available on Google Ads accounts

## Changes

- **2026-09-28** `1c23a639830f` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/zernio/apis/zernio-api/changes/v1/ads/conversions/custom-goals/:goalId/delete.md)

---

[API](https://skmtc.dev/zernio/apis/zernio-api.md) · [All operations](https://skmtc.dev/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zernio/apis/zernio-api/revisions/1c23a639830f?raw)
